All I can say is I understand. It's that time of year... We've had a lot of people out with illnesses - one manager told me she had nurses showing up for their shifts, running into the bathroom to throw up, then going home. Subsequently things are tight on shifts, but what can you do.
For those who don't work in hospitals, it's a catch 22, because people say don't come in when you're sick, but you are often penalized if you go over a certain amount of sick hours, and if it happens too often, you can lose your job.
My general rule of thumb is that I don't go if I'm too sick to take care of patients, but realistically I can't stay home every time I don't feel well. I try to save my sick time for when I'm *really* sick, but with kids that get sick and an elderly parent that I'm responsible for, I've had to use sick time for them when all three were hospitalized earlier this year. I also had to use a sick day to attend a funeral so that counts against me as well, so I'm hoping I don't get really sick this winter. I am sick with a head cold and sore throat right now but fortunately I already put my time in for the week. I was just thinking this morning what I would do if I had to go to work today.
I am pretty shocked to hear they called you at 3am to come in - if it was deliberate. I bet they were either desperate, or didn't realize you called in and were just going down a list frenzily calling people. I've had it happen to me and I've done it before myself when I'm the one making the calls (while also trying to care for patients). I mean, people have to go home at some point - by law they cannot work more than 16 hrs (at least in this state), so if people are all already working doubles and there's nobody coming in, there's a big problem, which leads to those desperate phone calls.

(Yeah, no stress!)
At any rate, hope you feel better! Try not to feel too guilty.
