Nas aplicações 4D, o ficheiro de dados é importante, pelo que toda a actividade da base de dados é armazenada no ficheiro de registo. Como todos sabem, o ficheiro de registo é um elemento vital para a restauração da sua base de dados após uma contingência infeliz. No entanto, todas as informações sobre a actividade da base de dados também podem ser úteis para análise. Por exemplo, para verificar a actividade numa tabela, para ver as alterações feitas por um utilizador, e para seguir o histórico de um registo.
Agora pode extrair o conteúdo do registo para um ficheiro JSON utilizando o novo comando LOG FILE TO JSON.
O LOG FILE TO JSON fornece mais informações, como por exemplo:
- Tipo de operação
- Nome da tabela
- Nome do processo
- Timestamp
- Nome da estação de trabalho
- …
Por exemplo:
[
.
{
"operationType":23,
"operationName": "Save seqnum",
"operationNumber":46,
"contextID":37,
"timeStamp": "2015-06-11T09:13:17138Z",
:
"sequenceNumber":23,
"tableID": "5AFA15123F991C43B6ACF8B46A914BD0",
"tableName": "elem"
},
{
"operationType"24,
.
"operationName": "Create record",
"operationNumber":47,
"contextID":37,
"timeStamp": "2015-06-11T09:13:17138Z",
“:
"dataLen":570,
"recordNumber":7,
"tableID": "5AFA15123F991C43B6ACF8B46A914BD0",
"tableName": "elem",
"fields": {
"1": 9,
"2": "valor do teste",
"3": "2003-03-03T00:00:00.000Z",
"4": "BlobPath": "BlobPath": Tabela 1/Field 4/Data_9ACB28F1A2744FDFA5822B22F18B2E12.png",
"8": "BlobID: 2"
},
"extraData": {
"task_id": 1",
"user_name": "Vanessa Smith",
"user4d_id": 1,
"host_name": 1, "host_name"iMac-VSmith-0833",
"nome_da_tarefa": "processo de aplicação",
"client_version": -1610541776
},
"primaryKey": "9"
}
]
A nova sintaxe de comando é:
LOG FILE TO JSON ( pathFolder ; {size ; {pathName ; {mode}}} )
- pathFolder: Pathname da pasta de exportação.
- tamanho: Tamanho máximo do ficheiro JSON (em bytes).
- pathname: Pathname do ficheiro de registo a ser integrado. Se não for definido, 4D utiliza o ficheiro de registo actual.
- modo: Se vazio ou 1, os valores do campo são prefixados pelo ID do campo. Se 2, os valores do campo são prefixados pelo campo Name.
Está disponível uma base de dados de exemplo para demonstrar a nova funcionalidade:
Para mais detalhes, consulte o manual de actualização 4D v15 R4.