---
title: "ClikaRtLog"
sidebar_label: "ClikaRtLog"
description: "Kotlin binding reference: ClikaRtLog."
---

<!-- Generated by tools/api_reference/generate_api_docs.py. Do not edit. -->

//[clika-runtime](../../../index.md)/[io.clika.runtime](../index.md)/[ClikaRtLog](index.md)

# ClikaRtLog

[common]\
object [ClikaRtLog](index.md)

The runtime's log lines through the host app's own logger. The runtime logs on its &quot;ClikaRT&quot; channel; [setLevel](setLevel.md) sets that channel's threshold and [setCallback](setCallback.md) routes every record at or above it to a [LogCallback](../LogCallback/index.md). The runtime's own console output continues beside the callback.

One callback is ever installed: a second [setCallback](setCallback.md) replaces the first, and `null` clears it.

```kotlin
ClikaRt.load()
ClikaRtLog.setLevel(LogLevel.INFO)
ClikaRtLog.setCallback { level, line -> println("[clikart $level] $line") }
```

On Android, `ClikaRtAndroid.bridgeLogs()` installs the logcat sink.

## Functions

| Name | Summary |
|---|---|
| [level](level.md) | [common]<br>fun [level](level.md)(): [LogLevel](../LogLevel/index.md)<br>The channel's current threshold. |
| [setCallback](setCallback.md) | [common]<br>fun [setCallback](setCallback.md)(callback: [LogCallback](../LogCallback/index.md)?)<br>Route every record to [callback](setCallback.md); `null` clears the sink. |
| [setLevel](setLevel.md) | [common]<br>fun [setLevel](setLevel.md)(level: [LogLevel](../LogLevel/index.md))<br>The channel threshold: records below [level](setLevel.md) are dropped. |