# AtraceLogger

Artifact: [androidx.test:rules](https://developer.android.com/jetpack/androidx/releases/test) [View Source](https://cs.android.com/search?q=file:androidx/test/rule/logging/AtraceLogger.java+class:androidx.test.rule.logging.AtraceLogger)

*** ** * ** ***


```
public class AtraceLogger
```

<br />

*** ** * ** ***

> [!CAUTION]
> **This class is deprecated.**   
>
> unsupported. Consider running trace from host such as via Android Studio

Class contains helper methods to dump atrace info asynchronously while running the test case.

## Summary

| ### Public methods |
|---|---|
| `void` | `[atraceStart](https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger#atraceStart(java.util.Set<java.lang.String>,int,int,java.io.File,java.lang.String))( https://developer.android.com/reference/java/util/Set.html<https://developer.android.com/reference/java/lang/String.html> traceCategoriesSet, int atraceBufferSize, int dumpIntervalSecs, https://developer.android.com/reference/java/io/File.html destDirectory, https://developer.android.com/reference/java/lang/String.html traceFileName )` **This method is deprecated.** Deprecated in Java |
| `void` | `[atraceStop](https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger#atraceStop())()` **This method is deprecated.** Deprecated in Java |
| `static https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger` | `[getAtraceLoggerInstance](https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger#getAtraceLoggerInstance(android.app.Instrumentation))(https://developer.android.com/reference/android/app/Instrumentation.html instrumentation)` **This method is deprecated.** Deprecated in Java |

## Public methods

### atraceStart

```
public void [atraceStart](https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger#atraceStart(java.util.Set<java.lang.String>,int,int,java.io.File,java.lang.String))(
    Set<String> traceCategoriesSet,
    int atraceBufferSize,
    int dumpIntervalSecs,
    File destDirectory,
    String traceFileName
)
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

Method to start atrace and dump the data at regular interval. Note : Trace info will not be captured during the dumping if there are multiple dumps between the atraceStart and atraceStop

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/util/Set.html<https://developer.android.com/reference/java/lang/String.html> traceCategoriesSet` | Set of atrace categories (i.e atrace --list_categories) |
| `int atraceBufferSize` | Size of the circular buffer in kb |
| `int dumpIntervalSecs` | Periodic interval to dump data from circular buffer |
| `https://developer.android.com/reference/java/io/File.html destDirectory` | Directory under which atrace logs are stored |
| `https://developer.android.com/reference/java/lang/String.html traceFileName` | is optional parameter.Atrace files are dumped under destDirectory. traceFileName will be indexed based on number of dumps between atraceStart and atraceStop under destDirectory. If traceFileName is null or empty "atrace" name will be used for indexing the files and stored under destDirectory |

| Throws |
|---|---|
| `https://developer.android.com/reference/java/io/IOException.html` |   |

### atraceStop

```
public void [atraceStop](https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger#atraceStop())()
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

Method to stop the atrace and write the atrace data cached in byte array list to file.

| Throws |
|---|---|
| `https://developer.android.com/reference/java/io/IOException.html` |   |
| `https://developer.android.com/reference/java/lang/InterruptedException.html` |   |

### getAtraceLoggerInstance

```
public static AtraceLogger [getAtraceLoggerInstance](https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger#getAtraceLoggerInstance(android.app.Instrumentation))(Instrumentation instrumentation)
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

To make sure only one instance of atrace logger is created.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/app/Instrumentation.html instrumentation` | Used to execute atrace shell commands |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/test/rule/logging/AtraceLogger` | instance of the AtraceLogger |