streamdal / plumber

A swiss army knife CLI tool for interacting with Kafka, RabbitMQ and other messaging systems.
https://streamdal.com
MIT License
2.07k stars 71 forks source link

--input-as-json-array not working #362

Closed pablitovicente closed 8 months ago

pablitovicente commented 8 months ago

Describe the bug

I am trying to send multiple messages to NATs jetstream and the flag --input-as-json-array seems to have no effect. It always produces a single message.

To Reproduce Steps to reproduce the behavior:

  1. Use the file attached below as input
  2. Execute the following command: ./plumber-linux write nats-jetstream --dsn="nats://localhost:4222" --subject=orders --input-as-json-array=yes --input-file=output.json
  3. Output is INFO[0000] Successfully wrote '1' message(s) pkg=plumber

Input file

[
  {
    "value": "pp34dizbo4ztdyxz9pax4qminujlgcaw84vdqr7w37mxi8apw9lhl9ozxtrfdzexdtv1umkj32ngh1krhyqoe15nc7ns5jxedi5n25mh2kdqsx8pwq5lhly3u9q31r7qxmpc3d251atxxtw1smwg5g6nscop4vay2wb33nqikmu8ckfhn2aqzf1v2z0jc3joleja1y9o0vqphpnzuazko2ns19458iilhhp0wtkxhy6s3d6362pkpo7twcbfx350"
  },
  {
    "value": "y2bnumxbxbsvgtdefondtkqkcygml2knnovzetu4m894ma89btbr44bfa9xq1lvp05m85k5cfrfzrm4cm0tauktuewshq4npgd06l2q4hz14vxhurluwf1v3nky1qd62mcdcoiquhns0sunu72xy7298rsodyvm3tz6juhr2h8uzao3xbkkifrfr4s2d5e3hlrgpi1c5gni102t4i07oz495ch47m0mh8mxdx4iqolw7wzcyfakm7oz4kf3d7kwp"
  },
  {
    "value": "jordpcpn8lnkttbv3uotme5ieg6h22tmlt61j4oeznodo1sonf29n3awp6jr5651vs4p7u5mdc3d4i4dtacfyn2npj53ut718clmiqo6w5yuqnmgzos674krc6t7ka3lz5tsiio5m5ogzscnxl9mehg6mgybw7bnm33h37wwgkft407a2hn4mnyok42174xhy8t5f9x3hg2cx5gqn4xmt42qdoyg7ckhk39rj7httnkhlrox2glor2wvc0jsmjwj"
  },
  {
    "value": "d9yzfegzcolfeqttnub2ap071kulfpbqt5toj4xl96z4b607ppol9u1e22c1o6682ngt2p8fgdbr61dyyzehj585vianlw9u4rye3pb8h9gk8yzq3bdjl3lb0t1pmu592ozpx3n33itor466345kvv1w42yuju5e3zjh2xlixzvndcc109d6hifwdjutjbuwgrs4kr7bycqr687a3g6yf5ljfi7cmhy6a56hb7o195hek7ed3yw63urbn2tvfpo0"
  },
  {
    "value": "avyhdy0k3lm50xdi03k5gzau3rz0kn2o24zozdc37kte2dgx1foezy5t15s21fok1puy6lsmh8nd7ejm8vicg0hck2xleyzz0kg9xzthgeggzs6c7uxn7fvdzebzq21tceyl3ndt8cp45gs7mpghvefvutq5glty9br7gsw5qfa8hqo8tm9q7ki58v1kpydje41v42ephy1smxdcryieiqf7tm45dp8xo6bhjcu3vt5npn51x8gner796bc5p13v"
  },
  {
    "value": "cirdcpf3bjtw7g6z9zngtaukh4phxmkaw6db9ezwc9c6hpnpvry8cinn87hozafqtfl3cmnzouhqqhs4ejh636u00j66flfpalerbfztmzmz6zrjueqx6vx7c0rwyttvtufqddcpcaw03x6jjeff837yottfskoz4k5baiwd08hipaydcsv0f0mmrqt2r0we9sjirwf06m7hw9qwe489rvn4kkrwj926nam44oys8erqvsaq3g3qnsibx0wyxaln"
  },
  {
    "value": "g2a8dvgwhzgr09b9e68oeszqb4gn8ipzvxe4twq2jer6heug7um6nnzzsxvnf24jtstlzu3910rqier52zbut9q62evan7fsw516idy9nkhxzs741gwwhnmovoixxgd8b9op1wy99ycn40j72dd37lmhvytxadtb83hkvjxeac03akec0wqz1ahqzgp5xholsxq3t0mzatcimlrr7iotlv43cgx4w3zofha9xg1prmxffusepd2th47bnfk9eygw"
  },
  {
    "value": "h81m0ygwucm2cxdmrsn06chnjmfkiwwasev54qv5x7l7r9nfbqc1bi4ue42su1qaynxcqzlz45a1pyy0awynlmd0ifednug3dj8wg0evcq7joqxuvg5jcr222axhoues3wdm3n0y682rle1dbgw5vku8z4uzknyz0pllkoal241ztt78yvin85abky5rou76qycizq106x65xlv9cbkwuj63wjudet1j37yvua28uqq6pymj88e5fsux0ratrxjd"
  },
  {
    "value": "zqhsxasbcrkuhyb9bou2azmsq2h1k7od7gvxhdato3cjv0cc6hdf0e0pj4vwhjc5c7i7brxsz0m3c38umi88y8utw7yiz2vgrk7f02j8jeiqv8ntodsk2lxn88l47puj9zloydbs0rntit30vyq66c9hyqru5fvj19vyghxehrumdkru8lpf6w91b1aqvjzubj2pephs112ubh454htsfqi6d2fn1xb5pb470blboew3zditojmj7aeiqt0uc4wo"
  },
  {
    "value": "5615uu85zokxp4illqgehu3qot5ct18v5no05fcr4y8n12f4w5b0f54a5081sbv93vwkaozkt83zia3oqnygyihfbkv4lvhnk0t6idwbhewnsbqxahu98lmj8gi00eei1kvoezzzgrlr6prva1cm0b6m33a2a2xcsl399cyge7iwcjsz0gvtr2rtkq0iniys7ytx95zod24ju9rgunr0uv64jy1jflnpmp584k5v0s2317s3my20chedwafpcz0c"
  }
]

Expected behavior A clear and concise description of what you expected to happen.

The help for --input-as-json-array states Treat input as JSON array - each array element will be written as a separate message

Screenshots If applicable, add screenshots to help explain your problem.

CLI (please complete the following information):

Additional context Add any other context about the problem here.

pablitovicente commented 8 months ago

Solved to use this flag one needs to do:


cat output.json| ./plumber-linux write nats-jetstream --dsn="nats://localhost:4222" --subject=orders