generate_data.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. import * as fs from "fs"
  2. import { faker } from '@faker-js/faker';
  3. let GigaPayload: any[] = []
  4. export function createMessage(): any {
  5. return {
  6. header: {
  7. messageType: "Command",
  8. messageID: faker.datatype.uuid(),
  9. messageName: faker.word.adjective(),
  10. dateCreated: faker.date.recent(),
  11. isAggregated: faker.datatype.boolean(),
  12. servicecId: faker.datatype.uuid(),
  13. userId: faker.datatype.uuid(),
  14. requesterId: faker.datatype.uuid(),
  15. messagePreoducerInformation: {
  16. origin: {
  17. userApplication: {
  18. userAppId: faker.finance.accountName(),
  19. userAppName: faker.name.jobTitle()
  20. }
  21. },
  22. components: faker.word.adverb()
  23. },
  24. security: {
  25. ucpid: faker.datatype.uuid()
  26. },
  27. messageDataLocation: {
  28. isEmbaded: faker.datatype.boolean()
  29. },
  30. messageDataFormat: {
  31. dataFormate: faker.datatype.json()
  32. },
  33. requestExecutiomNode: faker.datatype.number(),
  34. requestTimeOut: faker.datatype.number(),
  35. command: faker.word.adjective()
  36. },
  37. data: {
  38. header: faker.datatype.uuid(),
  39. data: {
  40. appLogLocId: faker.datatype.uuid(),
  41. appData: {
  42. msgId: faker.datatype.uuid(),
  43. msgLogDateTime: faker.date.past(),
  44. msgDateTime: faker.date.past(),
  45. msgTag: faker.helpers.arrayElement(['free', 'basic', 'business', 'enterprise', 'rich', 'super-rich', 'mega-rich', 'empire']),
  46. msgPayload: faker.lorem.sentences()
  47. }
  48. }
  49. }
  50. }
  51. }
  52. Array.from({ length: 100 }).forEach(() => {
  53. GigaPayload.push(createMessage());
  54. });
  55. fs.writeFileSync('payload.json', JSON.stringify(GigaPayload))