Manage data
Upload data
When uploading data to the inbox bucket, you need to add a foxglove_device_id
metadata key that corresponds to a device ID in your Foxglove organization.
To add a device and get its ID, either click "Add Device" in the web console, or use the CLI's foxglove devices add
command.
Once you've created a device, import data for that device according to your cloud provider.
Microsoft Azure
$ az storage blob upload -f ~/data/bags/gps.bag --container-name inbox --account-name yourorgfgstorage -n gps.bag --overwrite --metadata foxglove_device_id=dev_03ooHzt1GRRdnGrP
Google Cloud Storage
$ gsutil -h "x-goog-meta-foxglove_device_id:<your device id>" cp <input.bag> gs://<your inbox bucket>/<path>
Amazon S3
$ aws s3 cp input.bag s3://<inbox-bucket>/<path> --metadata '{"foxglove_device_id": "<your device ID>"}'
You will see the pending import in the web console's Recordings page. Once processed, the uploaded data will be available and accessible via the API, CLI, and Foxglove Studio.
Specifying a device in MCAP metadata
If you are importing MCAP files, you can specify the associated device ID in an MCAP metadata record rather than in object metadata as described above. You may also specify a device name rather than an ID.
- Include a metadata record named
foxglove
- In that record, either:
- add your device ID with a key of "deviceId"
- add your device name with a key of "deviceName"
Note, if referring to a device by name, that the device must be known to Data Platform in advance. If you supply a device name which doesn't have an associated Foxglove ID, your import will fail. To add the device to Data Platform, see Add a device.
Python example:
mcap_writer.add_metadata(
name="foxglove",
metadata={ "deviceId": "dev_abc123" },
)
If the device ID is specified in both MCAP metadata and object metadata as documented above, object metadata takes precedence.
If more than one metadata record is present in the MCAP with the name foxglove
, only the last record in the file will be used.