¿Cómo escribir registros de transacciones en un archivo de texto en geth?

He hecho un contrato que genera un evento público en blockchain que notificará al cliente sobre una transacción. Para escuchar el evento, he escrito el siguiente fragmento en la consola geth:

var event = token.CoinTransfer({}, '', function(error, result){
  if (!error)
    console.log("Coin transfer: " + result.args.amount + " tokens were sent. Balances now are as following: \n Sender:\t" + result.args.sender + " \t" + token.coinBalanceOf.call(result.args.sender) + " tokens \n Receiver:\t" + result.args.receiver + " \t" + token.coinBalanceOf.call(result.args.receiver) + " tokens" )
});

Ahora, en lugar de console.log(), quiero que estas transacciones se almacenen en un archivo de texto TransactionHistory.txt. ¿Cómo podemos hacer esto? ¿Hay una mejor manera que escuchar el evento para mantener registros de transacciones?

Respuestas (2)

Probablemente sea mejor que ejecute el script desde un archivo de todos modos

 geth --exec 'loadScript("/tmp/test.js")' attach 

Luego puede dirigir la salida, por ejemplo en Linux y Mac:

 geth --exec 'loadScript("/tmp/checkbalances.js")' attach > log.txt
Sería mejor si hay un comando que reemplace "console.log". De esa manera podré obtener los registros que quiero, en el formato que me gusta. ¿Existe tal comando(s)?
pensando en lo mismo..

La consola Geth es básicamente un subconjunto de Javascript, por lo que está limitado console.logy se podría hacer la respuesta de @Roland de redirigir a un archivo.

Tienes más flexibilidad usando Ethereum JSON-RPC (ver filtros). Puede usar una amplia gama de lenguajes para JSON-RPC (algunos aquí ) y sus capacidades para E/S: por ejemplo, puede usar Python .