CircularAtraceUtil

public class CircularAtraceUtil
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.CircularAtraceUtil


Um utilitário atrace desenvolvido principalmente para identificar as causas raízes de ANRs durante testes do Monkey. Invocar o comando "start" inicia o monitoramento assíncrono dos rastreamentos marcados em um buffer circular. Invocar "stop" vai despejar o conteúdo do buffer em um InputStreamSource que ele retorna. Para usar isso no caso mencionado acima (identificar ANRs), primeiro é preciso implementar o método start no início do teste e o método end imediatamente no final do teste. Aqui, é possível escolher como armazenar e processar os dados. A maioria provavelmente usará o systrace com a opção --from-file para gerar um visualizador HTML.

Resumo

Construtores públicos

CircularAtraceUtil()

Métodos públicos

static FileInputStreamSource endTrace(ITestDevice device)

Interrompe e despeja o atrace de forma assíncrona em um arquivo, que é retornado em um InputStreamSource.

static void startTrace(ITestDevice device, List<String> tags, int bufferSizeMB)

Inicia um rastreamento de forma assíncrona com as tags especificadas.

Construtores públicos

CircularAtraceUtil

public CircularAtraceUtil ()

Métodos públicos

endTrace

public static FileInputStreamSource endTrace (ITestDevice device)

Interrompe e despeja o atrace de forma assíncrona em um arquivo, que é retornado em um InputStreamSource.

Parâmetros
device ITestDevice

Retorna
FileInputStreamSource um FileInputStreamSource com os resultados do comando atrace

Gera
DeviceNotAvailableException
IllegalStateException

startTrace

public static void startTrace (ITestDevice device, 
                List<String> tags, 
                int bufferSizeMB)

Inicia um rastreamento de forma assíncrona com as tags especificadas.

Parâmetros
device ITestDevice: o dispositivo cujas ações serão monitoradas

tags List: tags que o atrace precisa monitorar. O padrão é "am gfx sched view".

bufferSizeMB int: o tamanho dos buffers circulares em MB.

Gera
DeviceNotAvailableException
IllegalStateException