mirror of
https://gitlab.com/mangadex-pub/mangadex_at_home.git
synced 2024-01-19 02:48:37 +00:00
Fix metrics
This commit is contained in:
parent
f62eb0db00
commit
58df77bac7
|
@ -18,6 +18,8 @@ along with this MangaDex@Home. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
package mdnet
|
||||
|
||||
import io.micrometer.core.instrument.Gauge
|
||||
import io.micrometer.core.instrument.binder.BaseUnits
|
||||
import io.micrometer.prometheus.PrometheusConfig
|
||||
import io.micrometer.prometheus.PrometheusMeterRegistry
|
||||
import mdnet.cache.ImageStorage
|
||||
|
@ -105,7 +107,19 @@ class ServerManager(
|
|||
|
||||
fun start() {
|
||||
LOGGER.info { "Image server starting" }
|
||||
DefaultMicrometerMetrics(registry, storage.cacheDirectory)
|
||||
DefaultMicrometerMetrics(registry)
|
||||
Gauge.builder(
|
||||
"cache.used",
|
||||
storage,
|
||||
{ it.size.toDouble() }
|
||||
).baseUnit(BaseUnits.BYTES).register(registry)
|
||||
|
||||
Gauge.builder(
|
||||
"cache.size",
|
||||
storage,
|
||||
{ it.size.toDouble() }
|
||||
).baseUnit(BaseUnits.BYTES).register(registry)
|
||||
|
||||
loginAndStartServer()
|
||||
|
||||
var lastBytesSent = statistics.bytesSent.get()
|
||||
|
|
2
src/main/kotlin/mdnet/cache/ImageStorage.kt
vendored
2
src/main/kotlin/mdnet/cache/ImageStorage.kt
vendored
|
@ -55,7 +55,7 @@ data class Image(val data: ImageMetadata, val stream: InputStream)
|
|||
*/
|
||||
class ImageStorage(
|
||||
var maxSize: Long,
|
||||
val cacheDirectory: Path,
|
||||
private val cacheDirectory: Path,
|
||||
private val database: Database,
|
||||
autoPrune: Boolean = true
|
||||
) {
|
||||
|
|
|
@ -19,7 +19,6 @@ along with this MangaDex@Home. If not, see <http://www.gnu.org/licenses/>.
|
|||
package mdnet.metrics
|
||||
|
||||
import io.micrometer.core.instrument.Tag
|
||||
import io.micrometer.core.instrument.binder.jvm.DiskSpaceMetrics
|
||||
import io.micrometer.core.instrument.binder.jvm.JvmGcMetrics
|
||||
import io.micrometer.core.instrument.binder.jvm.JvmHeapPressureMetrics
|
||||
import io.micrometer.core.instrument.binder.jvm.JvmMemoryMetrics
|
||||
|
@ -30,9 +29,8 @@ import io.micrometer.core.instrument.binder.system.ProcessorMetrics
|
|||
import io.micrometer.core.instrument.binder.system.UptimeMetrics
|
||||
import io.micrometer.prometheus.PrometheusMeterRegistry
|
||||
import mdnet.BuildInfo
|
||||
import java.nio.file.Path
|
||||
|
||||
class DefaultMicrometerMetrics(registry: PrometheusMeterRegistry, cacheDirectory: Path) {
|
||||
class DefaultMicrometerMetrics(registry: PrometheusMeterRegistry) {
|
||||
init {
|
||||
UptimeMetrics(
|
||||
mutableListOf(
|
||||
|
@ -47,6 +45,5 @@ class DefaultMicrometerMetrics(registry: PrometheusMeterRegistry, cacheDirectory
|
|||
JvmHeapPressureMetrics().bindTo(registry)
|
||||
FileDescriptorMetrics().bindTo(registry)
|
||||
LogbackMetrics().bindTo(registry)
|
||||
DiskSpaceMetrics(cacheDirectory.toFile()).bindTo(registry)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ import io.github.resilience4j.circuitbreaker.CircuitBreakerConfig
|
|||
import io.github.resilience4j.circuitbreaker.CircuitBreakerRegistry
|
||||
import io.github.resilience4j.micrometer.tagged.TaggedCircuitBreakerMetrics
|
||||
import io.micrometer.core.instrument.FunctionCounter
|
||||
import io.micrometer.core.instrument.binder.BaseUnits
|
||||
import io.micrometer.prometheus.PrometheusMeterRegistry
|
||||
import mdnet.cache.ImageStorage
|
||||
import mdnet.data.Statistics
|
||||
|
@ -98,10 +99,10 @@ fun getServer(
|
|||
)
|
||||
|
||||
FunctionCounter.builder(
|
||||
"client_sent_bytes",
|
||||
"client.sent.bytes",
|
||||
statistics,
|
||||
{ it.bytesSent.get().toDouble() }
|
||||
).register(registry)
|
||||
).baseUnit(BaseUnits.BYTES).register(registry)
|
||||
|
||||
val verifier = TokenVerifier(
|
||||
tokenKey = remoteSettings.tokenKey,
|
||||
|
|
Loading…
Reference in a new issue