0

I have one Activator project, the controllers which i have written for that i am able to log into seprate file. Now i have some JS file which contains some logging statments too which i want to store in same log file.

Application.java sample

public static Result index() throws Exception {
    Logger.of(LoggerConstants.OTNlogger).debug(LoggerConstants.methodEntry);
    // CommonUtils.createDBConnection();

    if (isSessionExist()) {
        Logger.of(LoggerConstants.OTNlogger).debug(
                LoggerConstants.returnObj + LoggerConstants.loggerSpace);
        Logger.of(LoggerConstants.OTNlogger).debug(
                LoggerConstants.methodExit);
        return ok(tool.render());
    } else {
        Logger.of(LoggerConstants.OTNlogger).debug(LoggerConstants.methodExit);
        return badRequest(main.render());
    }
}

Logger.xml

<configuration debug="true">

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder 
        by default -->
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
</appender>

<appender name="FILE"
    class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>logFile.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!-- daily rollover -->
        <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>

        <!-- keep 1 days' worth of history -->
        <maxHistory>5</maxHistory>
    </rollingPolicy>
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%caller{2}  : %r]   %p  %logger{0} - %msg  %n</pattern>
        <!-- time, [caller level : excution time of method], level, loggerName, - message -->
    </encoder>

</appender>


<logger name="ODE" level="TRACE" additivity="false">
    <appender-ref ref="STDOUT" />
    <appender-ref ref="FILE" />

</logger>

<logger name="play" level="INFO" additivity="false">
    <appender-ref ref="STDOUT" />

</logger>


<root level="info" additivity="false">
    <appender-ref ref="STDOUT" />

</root>

LogFile.log sample

15:58:22.491 [Caller+0 at play.Logger$ALogger.debug(Logger.java:332) Caller+1 at com.egnaro.utils.CommonUtils.createDBConnection(CommonUtils.java:30) : 81754] DEBUG ODE - Entered into method
15:58:22.512 [Caller+0 at play.Logger$ALogger.info(Logger.java:361) Caller+1 at com.egnaro.utils.CommonUtils.createDBConnection(CommonUtils.java:33) : 81775] INFO ODE - Morphia Object Intilizing
15:58:22.927 [Caller+0 at play.Logger$ALogger.info(Logger.java:361) Caller+1 at com.egnaro.utils.CommonUtils.createDBConnection(CommonUtils.java:46) : 82190] INFO ODE - Databse created

sample.js

function inputEditor(data, event){
    var treeView = $("#tree").data("kendoTreeView");    
    var selectedNode = treeView.select(), 
    dataItem = treeView.dataItem(selectedNode);

    //var span = $(this).find('.k-sprite').hide();
    //var span = $(this).find('.k-sprite').detach();

    $target = $(event.target);
    $target.editable(function (value, settings)
    {
        console.log(this);
        return value;
    },
    {
        submit:'ok',
        event: 'dblclick',
        cssclass: 'editableTree'
    });

    //return;
    //$(this).find('.k-sprite').append(span);
    $target.trigger('dblclick', [event]);
    //$(this).find('.k-sprite').append(span);

}

I want to store log for console.log() in my loggerfile. Please give step by step explanation, i'm new in playframework.

undefined
  • 19
  • 1
  • 4
  • 1
    Javascript like `console.log` is executed by the browser, not the server. Play configuration can't help you here. There's certainly a javascript library out there someone that will help you log to a file. – Michael Zajac Feb 15 '15 at 14:52
  • @m-z write an answer before this question will bo closed. – biesior Feb 15 '15 at 21:24
  • I am still finding solution for it, looking for how to implement. – undefined Feb 16 '15 at 06:13
  • Pravin, @m-z answered you - console.log is called on the CLIENT side and Play has NOTHING to do with it... is that really so hard to understand difference between client/server side parts ? If you want to save the logs, you need to handle it as a common ajax request - yourself – biesior Feb 16 '15 at 07:39
  • Consider your site as a car and Play as a factory, your car doesn't need to contact to factory to check the fuel level, and vice versa, factory doesn't care that in your car "low fuel level" indicator starts to light. These are two separate things. – biesior Feb 16 '15 at 08:06

0 Answers0