---
title: Lightning Tutorial
description: PyTorch Lightning or Lightning Fabric to drive experiment logging for you.
canonical: 'https://lightning.ai/docs/litlogger/stable/tutorials/lightning'
---
# Lightning Tutorial {#lightning-tutorial}

Use `lightning:lightning.pytorch.loggers.LitLogger` when you want
PyTorch Lightning or Lightning Fabric to drive experiment logging for you.
[`LightningLogger`](/docs/litlogger/2026.08.28/api-reference/api.md#litlogger.logger.LightningLogger) is deprecated and remains only as a
compatibility alias.

![Comparing experiment media across runs](https://pl-bolts-doc-images.s3.us-east-2.amazonaws.com/litlogger/experiment_comparison_media.png)

## Trainer Integration {#trainer-integration}

```python
from lightning import Trainer
from lightning.pytorch.loggers import LitLogger

logger = LitLogger(
    name="mnist-autoencoder",
    metadata={"dataset": "mnist"},
)

trainer = Trainer(max_epochs=3, logger=logger)
trainer.fit(model, datamodule)
```

## Metrics {#metrics}

Every `self.log(...)` call in your module flows through the logger into
LitLogger.

```python
def training_step(self, batch, batch_idx):
    loss = ...
    self.log("train_loss", loss)
    return loss
```

## Hyperparameters {#hyperparameters}

Lightning hyperparameters are captured through `save_hyperparameters()` or
via `metadata=...` on the logger itself.

## Checkpoint Logging {#checkpoint-logging}

Enable automatic checkpoint uploads with `log_model=True`.

```python
logger = LitLogger(name="my-model", log_model=True)

trainer = Trainer(
    logger=logger,
    callbacks=[checkpoint_callback],
)
```

## Files and Models {#files-and-models}

The logger also exposes file and model logging helpers:

```python
trainer.logger.log_file("config.yaml")
trainer.logger.log_model_artifact("checkpoints/best.ckpt", version="best")
```

For media uploads, use the standalone
[`Experiment`](/docs/litlogger/2026.08.28/api-reference/api.md#litlogger.experiment.Experiment) API directly. The upstream
`lightning:lightning.pytorch.loggers.LitLogger` does not provide a
`log_media` helper.

## Runnable Example {#runnable-example}

See the complete runnable example in
`examples/lightning_autoencoder.py` and the deeper guide at
[Lightning Integration](/docs/litlogger/2026.08.28/guides/lightning.md).

---

**Navigation**

- Parent: [Tutorials](/docs/litlogger/2026.08.28/tutorials.md)
