1. A data processing apparatus, comprising: a plurality of network interfaces that are coupled to a data network for receiving one or more packets therefrom and sending one or more packets thereto; one or more processors; a switching system coupled to the one or more processors and packet forwarding logic, wherein the switching system and packet forwarding logic are configured to receive packets on a first network interface, determine a second network interface on which to send the packets, and to send the packets on the second network interface; logic which when executed by the one or more processors is operable to cause: receiving over the network an application-layer message encapsulated in one or more of the packets; wherein the received one or more of the packets are addressed to a destination endpoint that hosts a receiving application or service, and wherein the data processing apparatus is not at the destination endpoint; wherein the application-layer message communicates application-level information between a sending application or service and the receiving application or service; wherein the application-level information comprises application-level attributes that are contained in a body of the application-layer message; forwarding the one or more of the packets toward the destination endpoint and concurrently copying at least part of the one or more of the packets without disrupting the forwarding; extracting the application-layer message from the copied at least part of the one or more of the packets; detecting one or more application-level attributes from the body of the extracted application-layer message; using the one or more application-level attributes from the body of the extracted application-layer message, discovering that the receiving application or service is using the network; using the extracted application-layer message, identifying one or more network-layer condition metrics and one or more application-layer condition metrics; determining, based on the identified network-layer condition metrics and the application-layer condition metrics, whether one or more conditions of a service level agreement are violated; in response to determining a violation, performing one or more responsive operations on one or more network elements.