A method comprising: synchronizing clocks associated with a plurality of computing devices in a robotic surgical system through a time synchronization protocol implemented by each of the plurality of computing devices, wherein the plurality of computing devices are connected through an internal network of the robotic surgical system; capturing, by a first computing device of the plurality of computing devices, network data sent over the internal network of the robotic surgical system by the plurality of computing devices, wherein the network data are associated with timestamps generated based on the respective clocks of the plurality of computing devices; storing, by the first computing device, the network data in a storage device associated with the first computing device based on the timestamps associated with the network data for a pre-determined period of time; receiving, by the first computing device through the internal network, a set of published messages published by at least a second computing device through one or more dedicated network ports, each of the set of published messages associated with a message priority and a timestamp generated based on the clock of the second computing device, wherein the network data captured by the first computing device over the internal network contain the set of published messages; transmitting, by the first computing device over an external network, at least a portion of the set of published messages to a server device for processing according to the respective message priorities and timestamps; receiving, within the pre-determined period of time, a request to retrieve the network data, wherein the request is generated based on the portion of the set of published messages transmitted to the server device and specifies one or more criteria for retrieving the network data; retrieving the network data that satisfy the one or more criteria; and transmitting, by the first computing device over the external network, the retrieved network data to the server device in response to the request. synchronizing clocks associated with a plurality of computing devices in a robotic surgical system through a time synchronization protocol implemented by each of the plurality of computing devices, wherein the plurality of computing devices are connected through an internal network of the robotic surgical system; capturing, by a first computing device of the plurality of computing devices, network data sent over the internal network of the robotic surgical system by the plurality of computing devices, wherein the network data are associated with timestamps generated based on the respective clocks of the plurality of computing devices; storing, by the first computing device, the network data in a storage device associated with the first computing device based on the timestamps associated with the network data for a pre-determined period of time; receiving, by the first computing device through the internal network, a set of published messages published by at least a second computing device through one or more dedicated network ports, each of the set of published messages associated with a message priority and a timestamp generated based on the clock of the second computing device, wherein the network data captured by the first computing device over the internal network contain the set of published messages; transmitting, by the first computing device over an external network, at least a portion of the set of published messages to a server device for processing according to the respective message priorities and timestamps; receiving, within the pre-determined period of time, a request to retrieve the network data, wherein the request is generated based on the portion of the set of published messages transmitted to the server device and specifies one or more criteria for retrieving the network data; retrieving the network data that satisfy the one or more criteria; and transmitting, by the first computing device over the external network, the retrieved network data to the server device in response to the request.