Switch database logger to SLF4J

This commit is contained in:
Syer10
2023-03-31 22:19:13 -04:00
parent 4c30d8ab05
commit eb197ebcee
11 changed files with 42 additions and 25 deletions

View File

@@ -7,7 +7,9 @@
package suwayomi.tachidesk.graphql package suwayomi.tachidesk.graphql
import io.javalin.apibuilder.ApiBuilder.* import io.javalin.apibuilder.ApiBuilder.get
import io.javalin.apibuilder.ApiBuilder.post
import io.javalin.apibuilder.ApiBuilder.ws
import suwayomi.tachidesk.graphql.controller.GraphQLController import suwayomi.tachidesk.graphql.controller.GraphQLController
object GraphQL { object GraphQL {

View File

@@ -10,7 +10,7 @@ package suwayomi.tachidesk.graphql.dataLoaders
import com.expediagroup.graphql.dataloader.KotlinDataLoader import com.expediagroup.graphql.dataloader.KotlinDataLoader
import org.dataloader.DataLoader import org.dataloader.DataLoader
import org.dataloader.DataLoaderFactory import org.dataloader.DataLoaderFactory
import org.jetbrains.exposed.sql.StdOutSqlLogger import org.jetbrains.exposed.sql.Slf4jSqlDebugLogger
import org.jetbrains.exposed.sql.addLogger import org.jetbrains.exposed.sql.addLogger
import org.jetbrains.exposed.sql.select import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
@@ -24,7 +24,7 @@ class CategoryDataLoader : KotlinDataLoader<Int, CategoryType> {
override fun getDataLoader(): DataLoader<Int, CategoryType> = DataLoaderFactory.newDataLoader<Int, CategoryType> { ids -> override fun getDataLoader(): DataLoader<Int, CategoryType> = DataLoaderFactory.newDataLoader<Int, CategoryType> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
CategoryTable.select { CategoryTable.id inList ids } CategoryTable.select { CategoryTable.id inList ids }
.map { CategoryType(it) } .map { CategoryType(it) }
} }
@@ -37,7 +37,7 @@ class CategoriesForMangaDataLoader : KotlinDataLoader<Int, List<CategoryType>> {
override fun getDataLoader(): DataLoader<Int, List<CategoryType>> = DataLoaderFactory.newDataLoader<Int, List<CategoryType>> { ids -> override fun getDataLoader(): DataLoader<Int, List<CategoryType>> = DataLoaderFactory.newDataLoader<Int, List<CategoryType>> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val itemsByRef = CategoryMangaTable.innerJoin(CategoryTable) val itemsByRef = CategoryMangaTable.innerJoin(CategoryTable)
.select { CategoryMangaTable.manga inList ids } .select { CategoryMangaTable.manga inList ids }
.map { Pair(it[CategoryMangaTable.manga].value, CategoryType(it)) } .map { Pair(it[CategoryMangaTable.manga].value, CategoryType(it)) }

View File

@@ -10,7 +10,7 @@ package suwayomi.tachidesk.graphql.dataLoaders
import com.expediagroup.graphql.dataloader.KotlinDataLoader import com.expediagroup.graphql.dataloader.KotlinDataLoader
import org.dataloader.DataLoader import org.dataloader.DataLoader
import org.dataloader.DataLoaderFactory import org.dataloader.DataLoaderFactory
import org.jetbrains.exposed.sql.StdOutSqlLogger import org.jetbrains.exposed.sql.Slf4jSqlDebugLogger
import org.jetbrains.exposed.sql.addLogger import org.jetbrains.exposed.sql.addLogger
import org.jetbrains.exposed.sql.select import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
@@ -23,7 +23,7 @@ class ChapterDataLoader : KotlinDataLoader<Int, ChapterType> {
override fun getDataLoader(): DataLoader<Int, ChapterType> = DataLoaderFactory.newDataLoader<Int, ChapterType> { ids -> override fun getDataLoader(): DataLoader<Int, ChapterType> = DataLoaderFactory.newDataLoader<Int, ChapterType> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
ChapterTable.select { ChapterTable.id inList ids } ChapterTable.select { ChapterTable.id inList ids }
.map { ChapterType(it) } .map { ChapterType(it) }
} }
@@ -36,7 +36,7 @@ class ChaptersForMangaDataLoader : KotlinDataLoader<Int, List<ChapterType>> {
override fun getDataLoader(): DataLoader<Int, List<ChapterType>> = DataLoaderFactory.newDataLoader<Int, List<ChapterType>> { ids -> override fun getDataLoader(): DataLoader<Int, List<ChapterType>> = DataLoaderFactory.newDataLoader<Int, List<ChapterType>> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val chaptersByMangaId = ChapterTable.select { ChapterTable.manga inList ids } val chaptersByMangaId = ChapterTable.select { ChapterTable.manga inList ids }
.map { ChapterType(it) } .map { ChapterType(it) }
.groupBy { it.mangaId } .groupBy { it.mangaId }

View File

@@ -10,7 +10,7 @@ package suwayomi.tachidesk.graphql.dataLoaders
import com.expediagroup.graphql.dataloader.KotlinDataLoader import com.expediagroup.graphql.dataloader.KotlinDataLoader
import org.dataloader.DataLoader import org.dataloader.DataLoader
import org.dataloader.DataLoaderFactory import org.dataloader.DataLoaderFactory
import org.jetbrains.exposed.sql.StdOutSqlLogger import org.jetbrains.exposed.sql.Slf4jSqlDebugLogger
import org.jetbrains.exposed.sql.addLogger import org.jetbrains.exposed.sql.addLogger
import org.jetbrains.exposed.sql.select import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
@@ -24,7 +24,7 @@ class ExtensionDataLoader : KotlinDataLoader<String, ExtensionType> {
override fun getDataLoader(): DataLoader<String, ExtensionType> = DataLoaderFactory.newDataLoader { ids -> override fun getDataLoader(): DataLoader<String, ExtensionType> = DataLoaderFactory.newDataLoader { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
ExtensionTable.select { ExtensionTable.pkgName inList ids } ExtensionTable.select { ExtensionTable.pkgName inList ids }
.map { ExtensionType(it) } .map { ExtensionType(it) }
} }
@@ -37,7 +37,7 @@ class ExtensionForSourceDataLoader : KotlinDataLoader<Long, ExtensionType> {
override fun getDataLoader(): DataLoader<Long, ExtensionType> = DataLoaderFactory.newDataLoader { ids -> override fun getDataLoader(): DataLoader<Long, ExtensionType> = DataLoaderFactory.newDataLoader { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
ExtensionTable.innerJoin(SourceTable) ExtensionTable.innerJoin(SourceTable)
.select { SourceTable.id inList ids } .select { SourceTable.id inList ids }
.map { ExtensionType(it) } .map { ExtensionType(it) }

View File

@@ -10,8 +10,7 @@ package suwayomi.tachidesk.graphql.dataLoaders
import com.expediagroup.graphql.dataloader.KotlinDataLoader import com.expediagroup.graphql.dataloader.KotlinDataLoader
import org.dataloader.DataLoader import org.dataloader.DataLoader
import org.dataloader.DataLoaderFactory import org.dataloader.DataLoaderFactory
import org.jetbrains.exposed.sql.SqlExpressionBuilder.inList import org.jetbrains.exposed.sql.Slf4jSqlDebugLogger
import org.jetbrains.exposed.sql.StdOutSqlLogger
import org.jetbrains.exposed.sql.addLogger import org.jetbrains.exposed.sql.addLogger
import org.jetbrains.exposed.sql.select import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
@@ -25,7 +24,7 @@ class MangaDataLoader : KotlinDataLoader<Int, MangaType> {
override fun getDataLoader(): DataLoader<Int, MangaType> = DataLoaderFactory.newDataLoader<Int, MangaType> { ids -> override fun getDataLoader(): DataLoader<Int, MangaType> = DataLoaderFactory.newDataLoader<Int, MangaType> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
MangaTable.select { MangaTable.id inList ids } MangaTable.select { MangaTable.id inList ids }
.map { MangaType(it) } .map { MangaType(it) }
} }
@@ -38,7 +37,7 @@ class MangaForCategoryDataLoader : KotlinDataLoader<Int, List<MangaType>> {
override fun getDataLoader(): DataLoader<Int, List<MangaType>> = DataLoaderFactory.newDataLoader<Int, List<MangaType>> { ids -> override fun getDataLoader(): DataLoader<Int, List<MangaType>> = DataLoaderFactory.newDataLoader<Int, List<MangaType>> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val itemsByRef = CategoryMangaTable.innerJoin(MangaTable).select { CategoryMangaTable.category inList ids } val itemsByRef = CategoryMangaTable.innerJoin(MangaTable).select { CategoryMangaTable.category inList ids }
.map { Pair(it[CategoryMangaTable.category].value, MangaType(it)) } .map { Pair(it[CategoryMangaTable.category].value, MangaType(it)) }
.groupBy { it.first } .groupBy { it.first }

View File

@@ -3,7 +3,7 @@ package suwayomi.tachidesk.graphql.dataLoaders
import com.expediagroup.graphql.dataloader.KotlinDataLoader import com.expediagroup.graphql.dataloader.KotlinDataLoader
import org.dataloader.DataLoader import org.dataloader.DataLoader
import org.dataloader.DataLoaderFactory import org.dataloader.DataLoaderFactory
import org.jetbrains.exposed.sql.StdOutSqlLogger import org.jetbrains.exposed.sql.Slf4jSqlDebugLogger
import org.jetbrains.exposed.sql.addLogger import org.jetbrains.exposed.sql.addLogger
import org.jetbrains.exposed.sql.select import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
@@ -20,7 +20,7 @@ class ChapterMetaDataLoader : KotlinDataLoader<Int, MetaType> {
override fun getDataLoader(): DataLoader<Int, MetaType> = DataLoaderFactory.newDataLoader<Int, MetaType> { ids -> override fun getDataLoader(): DataLoader<Int, MetaType> = DataLoaderFactory.newDataLoader<Int, MetaType> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val metasByRefId = ChapterMetaTable.select { ChapterMetaTable.ref inList ids } val metasByRefId = ChapterMetaTable.select { ChapterMetaTable.ref inList ids }
.map { ChapterMetaItem(it) } .map { ChapterMetaItem(it) }
.groupBy { it.ref } .groupBy { it.ref }
@@ -35,7 +35,7 @@ class MangaMetaDataLoader : KotlinDataLoader<Int, MetaType> {
override fun getDataLoader(): DataLoader<Int, MetaType> = DataLoaderFactory.newDataLoader<Int, MetaType> { ids -> override fun getDataLoader(): DataLoader<Int, MetaType> = DataLoaderFactory.newDataLoader<Int, MetaType> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val metasByRefId = MangaMetaTable.select { MangaMetaTable.ref inList ids } val metasByRefId = MangaMetaTable.select { MangaMetaTable.ref inList ids }
.map { MangaMetaItem(it) } .map { MangaMetaItem(it) }
.groupBy { it.ref } .groupBy { it.ref }
@@ -50,7 +50,7 @@ class CategoryMetaDataLoader : KotlinDataLoader<Int, MetaType> {
override fun getDataLoader(): DataLoader<Int, MetaType> = DataLoaderFactory.newDataLoader<Int, MetaType> { ids -> override fun getDataLoader(): DataLoader<Int, MetaType> = DataLoaderFactory.newDataLoader<Int, MetaType> { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val metasByRefId = MangaMetaTable.select { MangaMetaTable.ref inList ids } val metasByRefId = MangaMetaTable.select { MangaMetaTable.ref inList ids }
.map { CategoryMetaItem(it) } .map { CategoryMetaItem(it) }
.groupBy { it.ref } .groupBy { it.ref }

View File

@@ -10,8 +10,7 @@ package suwayomi.tachidesk.graphql.dataLoaders
import com.expediagroup.graphql.dataloader.KotlinDataLoader import com.expediagroup.graphql.dataloader.KotlinDataLoader
import org.dataloader.DataLoader import org.dataloader.DataLoader
import org.dataloader.DataLoaderFactory import org.dataloader.DataLoaderFactory
import org.jetbrains.exposed.sql.SqlExpressionBuilder.inList import org.jetbrains.exposed.sql.Slf4jSqlDebugLogger
import org.jetbrains.exposed.sql.StdOutSqlLogger
import org.jetbrains.exposed.sql.addLogger import org.jetbrains.exposed.sql.addLogger
import org.jetbrains.exposed.sql.select import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
@@ -26,6 +25,7 @@ class SourceDataLoader : KotlinDataLoader<Long, SourceType?> {
override fun getDataLoader(): DataLoader<Long, SourceType?> = DataLoaderFactory.newDataLoader { ids -> override fun getDataLoader(): DataLoader<Long, SourceType?> = DataLoaderFactory.newDataLoader { ids ->
future { future {
transaction { transaction {
addLogger(Slf4jSqlDebugLogger)
SourceTable.select { SourceTable.id inList ids }.map { SourceTable.select { SourceTable.id inList ids }.map {
SourceType(it) SourceType(it)
} }
@@ -39,7 +39,7 @@ class SourceForMangaDataLoader : KotlinDataLoader<Int, SourceType?> {
override fun getDataLoader(): DataLoader<Int, SourceType?> = DataLoaderFactory.newDataLoader { ids -> override fun getDataLoader(): DataLoader<Int, SourceType?> = DataLoaderFactory.newDataLoader { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val itemsByRef = MangaTable.innerJoin(SourceTable) val itemsByRef = MangaTable.innerJoin(SourceTable)
.select { MangaTable.id inList ids } .select { MangaTable.id inList ids }
@@ -68,7 +68,7 @@ class SourcesForExtensionDataLoader : KotlinDataLoader<String, List<SourceType>>
override fun getDataLoader(): DataLoader<String, List<SourceType>> = DataLoaderFactory.newDataLoader { ids -> override fun getDataLoader(): DataLoader<String, List<SourceType>> = DataLoaderFactory.newDataLoader { ids ->
future { future {
transaction { transaction {
addLogger(StdOutSqlLogger) addLogger(Slf4jSqlDebugLogger)
val sourcesByExtensionPkg = SourceTable.innerJoin(ExtensionTable) val sourcesByExtensionPkg = SourceTable.innerJoin(ExtensionTable)
.select { ExtensionTable.pkgName inList ids } .select { ExtensionTable.pkgName inList ids }

View File

@@ -2,10 +2,13 @@ package suwayomi.tachidesk.graphql.mutations
import com.expediagroup.graphql.server.extensions.getValuesFromDataLoader import com.expediagroup.graphql.server.extensions.getValuesFromDataLoader
import graphql.schema.DataFetchingEnvironment import graphql.schema.DataFetchingEnvironment
import org.jetbrains.exposed.sql.*
import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq
import org.jetbrains.exposed.sql.SqlExpressionBuilder.inList import org.jetbrains.exposed.sql.SqlExpressionBuilder.inList
import org.jetbrains.exposed.sql.and
import org.jetbrains.exposed.sql.batchInsert
import org.jetbrains.exposed.sql.deleteWhere
import org.jetbrains.exposed.sql.transactions.transaction import org.jetbrains.exposed.sql.transactions.transaction
import org.jetbrains.exposed.sql.update
import suwayomi.tachidesk.graphql.types.ChapterType import suwayomi.tachidesk.graphql.types.ChapterType
import suwayomi.tachidesk.manga.model.table.ChapterMetaTable import suwayomi.tachidesk.manga.model.table.ChapterMetaTable
import suwayomi.tachidesk.manga.model.table.ChapterTable import suwayomi.tachidesk.manga.model.table.ChapterTable

View File

@@ -23,6 +23,7 @@ import java.util.concurrent.CompletableFuture
* - Filter by downloaded * - Filter by downloaded
* - Filter by scanlators * - Filter by scanlators
* - Sort? Upload date, source order, last read, chapter number * - Sort? Upload date, source order, last read, chapter number
* - Get page list?
* *
* TODO Mutations * TODO Mutations
* - Last page read * - Last page read

View File

@@ -8,7 +8,19 @@
package suwayomi.tachidesk.graphql.server package suwayomi.tachidesk.graphql.server
import com.expediagroup.graphql.dataloader.KotlinDataLoaderRegistryFactory import com.expediagroup.graphql.dataloader.KotlinDataLoaderRegistryFactory
import suwayomi.tachidesk.graphql.dataLoaders.* import suwayomi.tachidesk.graphql.dataLoaders.CategoriesForMangaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.CategoryMetaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.ChapterDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.ChapterMetaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.ChaptersForMangaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.ExtensionDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.ExtensionForSourceDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.MangaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.MangaForCategoryDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.MangaMetaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.SourceDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.SourceForMangaDataLoader
import suwayomi.tachidesk.graphql.dataLoaders.SourcesForExtensionDataLoader
class TachideskDataLoaderRegistryFactory { class TachideskDataLoaderRegistryFactory {
companion object { companion object {

View File

@@ -115,7 +115,7 @@ object UpdateController {
updater.addMangasToQueue( updater.addMangasToQueue(
mangasToUpdate mangasToUpdate
.sortedWith(compareBy(String.CASE_INSENSITIVE_ORDER, MangaDataClass::title)), .sortedWith(compareBy(String.CASE_INSENSITIVE_ORDER, MangaDataClass::title))
) )
} }