mirror of
https://github.com/gohugoio/hugo.git
synced 2024-12-11 07:04:35 -05:00
38 lines
946 B
Markdown
38 lines
946 B
Markdown
|
---
|
||
|
title: debug.Timer
|
||
|
description: Creates a named timer that reports elapsed time to the console.
|
||
|
categories: []
|
||
|
keywords: []
|
||
|
action:
|
||
|
aliases: []
|
||
|
related: []
|
||
|
returnType: debug.Timer
|
||
|
signatures: [debug.Timer NAME]
|
||
|
---
|
||
|
|
||
|
{{< new-in 0.120.0 >}}
|
||
|
|
||
|
Use the `debug.Timer` function to determine execution time for a block of code, useful for finding performance bottle necks in templates.
|
||
|
|
||
|
The timer starts when you instantiate it, and stops when you call its `Stop` method.
|
||
|
|
||
|
```go-html-template
|
||
|
{{ $t := debug.Timer "TestSqrt" }}
|
||
|
{{ range seq 2000 }}
|
||
|
{{ $f := math.Sqrt . }}
|
||
|
{{ end }}
|
||
|
{{ $t.Stop }}
|
||
|
```
|
||
|
|
||
|
Use the `--logLevel info` command line flag when you build the site.
|
||
|
|
||
|
```sh
|
||
|
hugo --logLevel info
|
||
|
```
|
||
|
|
||
|
The results are displayed in the console at the end of the build. You can have as many timers as you want and if you don't stop them, they will be stopped at the end of build.
|
||
|
|
||
|
```text
|
||
|
INFO timer: name TestSqrt total 12.429355ms
|
||
|
```
|