I've changed the ECC queue name parameter with lsnode -nodhr -delim ,;
so I can manage the output better
this is the script now but the ecc queue keeps looping and with input and output and gr.setValue("size", values[5]);
gr.setValue("free_space", values[7]);
won't set any value, only gr.setValue("name", values[1]); is working

new DiscoverySensor({
    process: function(result) {
        var output = result.output.trim();
        output = output.replace(/\(Shell is not in supported shell list\)/g, "").trim();
        output = output.replace(/,,,[^,]+(?:,[^,]+){4},[^,]+,,,.*$/g, "").trim();
        var rows = output.split("\n");
        gs.log("Parsing1 " + output);
        gs.log("Parsing2 " + output.length);
        gs.log("Parsing3 " + rows);
        gs.log("Parsing4 " + rows.length);

        for (var i = 0; i < rows.length; i++) {
            var row = rows[i].trim();
            var values = row.split(",");
			
            gs.log("Parsing5 " + ", Name=" + name + ", Size=" + size + ", Free=" + free);

            var gr = new GlideRecord('cmdb_ci_storage_pool');
            gr.initialize();
            gr.setValue("name", values[1]);
            gr.setValue("size", values[5]);
            gr.setValue("free_space", values[7]);
            gr.insert();
        }
    },

    type: "DiscoverySensor"
});