com.lwohvye.log.service.ILogService Maven / Gradle / Ivy
/*
* Copyright 2019-2020 Zheng Jie
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.lwohvye.log.service;
import cn.hutool.core.lang.Dict;
import com.lwohvye.log.service.dto.LogQueryCriteria;
import com.lwohvye.log.domain.Log;
import org.aspectj.lang.ProceedingJoinPoint;
import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;
/**
* @author Zheng Jie
* @date 2018-11-24
*/
public interface ILogService {
/**
* 分页查询
*
* @param criteria 查询条件
* @param pageable 分页参数
* @return /
*/
Map queryAll(LogQueryCriteria criteria, Pageable pageable);
/**
* 查询全部数据
*
* @param criteria 查询条件
* @return /
*/
List queryAll(LogQueryCriteria criteria);
/**
* 查询用户日志
*
* @param criteria 查询条件
* @param pageable 分页参数
* @return -
*/
Map queryAllByUser(LogQueryCriteria criteria, Pageable pageable);
/**
* 保存日志数据。异步写日志
*
* @param username 用户
* @param browser 浏览器
* @param ip 请求IP
* @param joinPoint /
* @param log 日志实体
*/
@Async
void save(String username, String browser, String ip, ProceedingJoinPoint joinPoint, Log log);
@Async
void save(Log resource);
/**
* 查询异常详情
*
* @param id 日志ID
* @return Object
*/
Dict findByErrDetail(Long id);
/**
* 导出日志
*
* @param logs 待导出的数据
* @param response /
* @throws IOException /
*/
void download(List logs, HttpServletResponse response) throws IOException;
/**
* 删除所有错误日志
*/
void delAllByError();
/**
* 删除所有INFO日志
*/
void delAllByInfo();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy