Skip to content

Commit 4c18a16

Browse files
authored
Translation of assigntransactionid.md (#21)
* Translation of `assigntransactionid.md` * Correction following the review of MrYamous
1 parent 3d69d32 commit 4c18a16

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

sections/production/assigntransactionid.french.md

+11-11
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,36 @@
1-
# Assign ‘TransactionId’ to each log statement
1+
# Attribuez un ‘TransactionId’ à chaque relevé du journal
22

33
<br/><br/>
44

5-
### One Paragraph Explainer
5+
### Un paragraphe d'explication
66

7-
A typical log is a warehouse of entries from all components and requests. Upon detection of some suspicious line or error, it becomes hairy to match other lines that belong to the same specific flow (e.g. the user “John” tried to buy something). This becomes even more critical and challenging in a microservice environment when a request/transaction might span across multiple computers. Address this by assigning a unique transaction identifier value to all the entries from the same request so when detecting one line one can copy the id and search for every line that has similar transaction id. However, achieving this In Node is not straightforward as a single thread is used to serve all requests –consider using a library that that can group data on the request level – see code example on the next slide. When calling other microservices, pass the transaction id using an HTTP header like “x-transaction-id” to keep the same context.
7+
Un journal typique est un registre des entrées de tous les composants et requêtes. Lorsqu'une ligne ou une erreur suspecte est détectée, il devient difficile de faire correspondre d'autres lignes appartenant au même flux spécifique (par exemple, l'utilisateur "John" a essayé d'acheter quelque chose). Cela devient encore plus critique et difficile dans un environnement de micro-services lorsqu'une requête/transaction peut concerner plusieurs ordinateurs. Il convient de remédier à ce problème en attribuant une valeur d'identification de transaction unique à toutes les entrées d'une même requête, de sorte qu'en détectant une ligne, on puisse copier l'identifiant et rechercher toutes les lignes qui ont un identifiant de transaction similaire. Toutefois, la réalisation de cette opération dans Node n'est pas simple, car un seul processus est utilisé pour toutes les requêtes - envisagez d'utiliser une bibliothèque qui peut regrouper les données au niveau de la requête - voir l'exemple de code suivant. Lorsque vous appelez d'autres micro-services, transmettez l'identifiant de la transaction en utilisant une entête HTTP comme "x-transaction-id" pour conserver le même contexte.
88

99
<br/><br/>
1010

11-
### Code example: typical Express configuration
11+
### Exemple de code : configuration typique d'Express
1212

1313
```javascript
14-
// when receiving a new request, start a new isolated context and set a transaction id. The following example is using the npm library continuation-local-storage to isolate requests
14+
// à la réception d'une nouvelle requête, commencez un nouveau contexte isolé et définissez un identifiant de transaction. L'exemple suivant utilise la bibliothèque npm continuation-local-storage pour isoler les requêtes
1515

1616
const { createNamespace } = require('continuation-local-storage');
1717
const session = createNamespace('my session');
1818

1919
router.get('/:id', (req, res, next) => {
20-
session.set('transactionId', 'some unique GUID');
20+
session.set('transactionId', 'un GUID unique');
2121
someService.getById(req.params.id);
22-
logger.info('Starting now to get something by id');
22+
logger.info('Début de l\'identification');
2323
});
2424

25-
// Now any other service or components can have access to the contextual, per-request, data
25+
// Désormais, tout autre service ou composant peut avoir accès aux données contextuelles par requête
2626
class someService {
2727
getById(id) {
28-
logger.info('Starting to get something by id');
29-
// other logic comes here
28+
logger.info('Début de l\'identification');
29+
// une autre logique vient ici
3030
}
3131
}
3232

33-
// The logger can now append the transaction id to each entry so that entries from the same request will have the same value
33+
// Le journal peut désormais ajouter l'identifiant de la transaction à chaque entrée, de sorte que les entrées d'une même requête aient la même valeur
3434
class logger {
3535
info (message) {
3636
console.log(`${message} ${session.get('transactionId')}`);

0 commit comments

Comments
 (0)