Seems like it's pretty easy to get the API server to crash.
Although once it's crashed I can usually connect to it again later and interact with it, if it crashes a second time it locks up routeros at 100% CPU.
I've been trying to use the API for extensive configuration of routerboards, both over the wire and over the air.
It seems to me most everyone is using a scheme of sending one API command at a time and deal with its response.
But there are many api 'set' commands that could potentially break a remote link and leave an orphaned routerboard.
Does anyone have a good solution for dealing with this?
I came up with a scheme for sending several api 'set' commands in one packet (so all the necessary changes get applied at a remote site) and then dealing with the individual responses whenever they get back. This is where I tend to see the API server crash.
Has anyone learned any gotchas with the API?
Anyone else seen these API server crashes?
I've used wireshark to capture packets so I've confirmed my packet is always going out okay.
When the API server doesn't crash, seems like I get all the responses to all the set commands back in a single packet. When the API server does crash seems like I only get back most of them and sometimes see the API respond with action timed out message.
Currently I am using routeros 3.27 on both rb411's and rb433's.
I know I could use winbox or do an ssh connection to the command line but I'm not interested in those solutions for this discussion.
At the moment it feels like the API is not good for extensive configuration.