Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

fluree log

Show commit log for a ledger.

Usage

fluree log [LEDGER] [OPTIONS]

Arguments

ArgumentDescription
[LEDGER]Ledger name (defaults to active ledger)

Options

OptionDescription
--onelineShow one-line summary per commit
-n, --count <N>Maximum number of commits to show (default: 100)
--allShow the whole chain, with no limit. Conflicts with -n
--remote <NAME>Read the log from a configured remote
--directExecute in-process, bypassing auto-routing through a local server

Description

Displays the commit history for a ledger, newest first. Each entry shows the commit’s id, its transaction number t, the timestamp, and how many flakes the commit carries.

Commit messages are not shown. The commit format does not persist one today, so the one-line form shows the timestamp in that column instead.

Commit ids are hex digests

The id printed here is the first twelve characters of the commit’s SHA-256 digest, in hex. That is the spelling the commit resolvers accept, so anything fluree log prints can be pasted directly into show, into history --from / --to, or into a @commit: time-travel specifier.

A commit also has a base32 CID spelling — that is what the JSON API returns as commit_id, and what fluree show reports as "id". The two are the same commit; log prints hex because a CID cannot usefully be abbreviated. A CIDv1 opens with seven header bytes identifying the multibase, version, codec and hash function, so the first twelve characters of every commit CID are the constant bagaybqabciq and a thirteenth character adds only four bits. Pasting an abbreviated CID into show gets you a diagnostic saying so; pass the hex digest or the full CID instead.

How many commits are walked

-n and --all bound how many commits are loaded and shown, not how far the walk reaches: the chain’s shape has to be read in full before commits can be ordered by t. What the limit bounds is the number of full commit blobs fetched and the amount held in memory at once.

The default of 100 matches the server’s, so fluree log answers the same way whether or not it routes through a local server.

Examples

# Show the most recent 100 commits
fluree log

# Show last 5 commits
fluree log -n 5

# The whole chain
fluree log --all

# One-line format
fluree log --oneline

# Specific ledger
fluree log production --oneline -n 10

Output

Full Format (default)

$ fluree log logdemo
commit b6888dc89bb2
Date:    2026-09-15T05:58:52.676621+00:00
t:       6
Flakes:  1

commit b198f5439aa1
Date:    2026-09-15T05:58:52.621666+00:00
t:       5
Flakes:  1

commit 0017560963fb
Date:    2026-09-15T05:58:52.572901+00:00
t:       4
Flakes:  1

One-line Format

$ fluree log logdemo --oneline
t=6     b6888dc89bb2  2026-09-15T05:58:52.676621+00:00
t=5     b198f5439aa1  2026-09-15T05:58:52.621666+00:00
t=4     0017560963fb  2026-09-15T05:58:52.572901+00:00
t=3     ad2e480d1628  2026-09-15T05:58:52.517082+00:00
t=2     dfbfa6eb48ea  2026-09-15T05:58:52.450023+00:00
t=1     a9834005af34  2026-09-15T05:58:52.366394+00:00

Truncation

When the chain is longer than the limit, a note goes to stderr so it does not contaminate a piped log:

$ fluree log logdemo --oneline -n 2
t=6     b6888dc89bb2  2026-09-15T05:58:52.676621+00:00
t=5     b198f5439aa1  2026-09-15T05:58:52.621666+00:00
(showing 2 of 6 commits — pass -n to widen, or --all)

Feeding an id to another command

$ fluree show --ledger logdemo b6888dc89bb2
{
  "id": "bagaybqabciqlncenzcn3foxeomxb62nftmihwu776fnj6n5lxl3zdro2nm3g7gi",
  "t": 6,
  "time": "2026-09-15T05:58:52.676621+00:00",
  "size": 212,
  "parents": [
    "bagaybqabciqldghvionkcmw3rylvko6kmpkxfeyamd2qk6xjqaxgj3vvqxrh5mq"
  ],
  "asserts": 1,
  "retracts": 0,
  ...
}

See Also

  • show - Show decoded contents of a specific commit
  • info - Show ledger details
  • history - Show entity change history