[]
        
(Showing Draft Content)

日志

服务端命令日志

在服务端命令代码逻辑中添加日志,可以方便用户调试服务端命令,了解命令的执行状态。在execute 方法内调用 Logger 类中的方法来写日志

public class MyPluginServerCommand extends Command implements ICommandExecutableInServerSide {

    @Override
    public ExecuteResult execute(IServerCommandExecuteContext dataContext) {
        Logger.error("错误信息");
        Logger.warning("警告信息");
        Logger.info("info信息");
        Logger.debug("debug信息");
        Logger.trace("trace信息");
        return new ExecuteResult();
    }

    @Override
    public String toString() {
        return "我的服务端命令插件";
    }
}

 

Web Api 日志

package org.example;

import com.grapecity.forguncy.Logger;
import com.grapecity.forguncy.serverapi.annotation.Get;
import com.grapecity.forguncy.serverapi.entity.ForguncyApi;

import java.io.IOException;
import java.io.PrintWriter;

public class CustomApiT2 extends ForguncyApi {
    @Get
    public void helloWorld() throws IOException {
        Logger.error("错误信息");
        Logger.warning("警告信息");
        Logger.info("info信息");
        Logger.debug("debug信息");
        Logger.trace("trace信息");
        this.getContext().getResponse().setContentType("text/plain");
        String message = "Hello World CustomApiT2";
        PrintWriter out = this.getContext().getResponse().getWriter();
        out.print(message);
        out.close();
    }
}

安全提供程序

安全提供程序可以在 verifyUser getSettings 等方法中使用Logger 记录日志。

    @Override
    public User verifyUser(HashMap<String, String> properties) {
        Logger.error("错误信息");
        Logger.warning("警告信息");
        Logger.info("info信息");
        Logger.debug("debug信息");
        Logger.trace("trace信息");
        String name = properties.get("userName");
        for (User user : getUserInformations().getUsers()) {
            if (user.getUserId().equals(name)) {
                return user;
            }
        }
        return null;
    } 

效果如下:

image

  • 如果是在设计器,在%Temp%\ForguncyDesignerLog\ForguncyJavaAdapter 目录下查看。

  • 如果是在服务器,在日志存储目录下的ForguncyJavaAdapter目录中。

image

 

默认开启的日志级别是INFO 级别,只输出INFO 以上的日志信息。