On Thu, Aug 25, 2011 at 11:27 AM, Daniel Wagner <wagi@xxxxxxxxx> wrote: > Hi Chris, > > On 08/25/2011 05:05 PM, Chris Friesen wrote: > > On 08/25/2011 06:55 AM, Daniel Wagner wrote: > > > >> I'd like to solve a use case where it is necessary to count all bytes > >> transmitted and received by an application [1]. So far I have found two > >> unsatisfying solution for it. The first one is to hook into libc and > >> count the bytes there. I don't think I have to say I don't like this. > > > > Is there any particular reason you can't use LD_PRELOAD to interpose a > > library to do the statistics monitoring? > > This is certainly possible to do for any dynamic linked application. I > think it wouldn't work for static linked ones. Currently I don't know if > I have to face such application on the project I am on. The reason why I > am not so a big fan is that using the LD_PRELOAD trick seems very > hackish to me. > LD_PRELOAD is widely regarded as a debugging and tracing method -- it's not usually suitable for implementing features. Why? Because there's nothing stopping an application from resetting LD_PRELOAD and re-exec'ing to escape the measurements and limitations such a preload implements. Plus naive use of LD_PRELOAD could easily interfere with other things that use it. For example what if you want to use DMTCP with this? Cheers, -Matt _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers