{"push_id":736233273,"size":1,"distinct_size":1,"ref":"refs/heads/werk-java","head":"46d61984b4174b9af58052400636d7f6d1e6e26c","before":"6e7652e54d4948b222995e396cabb8e53cec9ed6","commits":[{"sha":"46d61984b4174b9af58052400636d7f6d1e6e26c","author":{"email":"0b9d8e7da097b5bbfe36e48cca5acfe475f18227@efficios.com","name":"Alexandre Montplaisir"},"message":"Refactor Java agent to let applications manage the log handlers\n\nMajor refactoring of the UST Java agent and its JUL and log4j\nlogging facilities.\n\nSplit up the big LTTngAgent class into two separate agent\nsingletons, one for JUL and one for log4j.\nThe large parts of common code remain in the -common package\nin AbstractLttngAgent, with the API-specific implementations\nin their respective -jul or -log4j package.\nThis removes the need for circular-dependencies (which were\nworked around using reflection) between the common and the\nother packages.\n\nThe applications are now expected to instantiate their\nJUL Handler or log4j LogAppender themselves, and to attach\nthem to corresponding Logger objects. The LttngLogHandler and\nLttngLogAppender classes are now made public to allow this.\n\nAgents are now spawned automatically on demand, as Handler\nobjects are created. Once the last handler/appender is\nclose()'d, the agent is disposed as well. This reduces the\nnumber of threads and socket connections to the minimum that\nis necessary.\n\nThe two separate tracepoints in the JNI library, tracepointS\nand tracepointU, are now merged into one. Events sent to either\nthe root or user session daemon will use the same call.\n\nThe LTTngAgent.getLTTngAgent() API is kept for compatibility\nwith applications using it, but now marked @Deprecated. The\nfunctionality underneath was re-implemented using the new\nclasses, but the behaviour should be kept the same.\n\nSigned-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>","distinct":true,"url":"https://api.github.com/repos/alexmonthy/lttng-ust/commits/46d61984b4174b9af58052400636d7f6d1e6e26c"}]}