IOS battery usage

I have the latest version of mobile edge on my phone (2.22). I also noticed this in the last version of the client as well. I don’t use it much other than showing people how it works or the occasional usage (sometimes less than once a day). However it likes to suck the battery. According to battery monitor it can account for approx 43% battery usage within 24 hours. Other high use apps like Outlook are tapping out at 6%. Is there a way to make less hungry when in the background?
Basically I need to charge the phone a lot quicker if I have ziti enabled than when I don’t. This is on a 12 pro max.

Hi Goosleggs - I’d like to take a look at what’s happening on your phone. Would you please do the following:

  1. From the ZME app, go to Advanced > Snapshot. There’s no need to capture the results on the screen that shows next, it will also be logged.
  2. Navigate back to the main screen and click Send Feedback. This should pop up your email client with log files attached.
  3. Either send that email (the default address that is displayed is fine) or save the logs and post them here (whichever you prefer).

Thanks

Thanks for quick response. I have just sent through a prelim message as I had disabled the tunnel but at least gives you a config. Will leave it one and send an update tomorrow or day following.

Thanks. I’ll take a look. I also added an issue related to a “low power” mode, which I think will be needed. Low power mode on iOS · Issue #105 · openziti/ziti-tunnel-apple · GitHub

Just sent feedback. Ziti was 45% usage last 24 hours.

Thanks. I took a quick look at the logs, and plan to take a closer look later today. I do see periods with a bunch of connection failures, which is an area we can look at for improving battery usage.

I did some playing around over the weekend with a “low power mode” with some success (centered around connection usage while phone is asleep). In some limited testing, I saw my battery usage drop from around 7% to around 3%. I’ve run into a couple of snags with this that we’ll need to work through. I’ll also make sure my testing includes broader feature usage (e.g., I don’t currently have any posture checks enabled on my phone)

Hey @smilindave26

Just wanting to see where we landed with this. I have just done some more tests, and when Ziti enabled, but identity not, battery usage is nil. When identity enabled, I am up to 59% battery usage for the past 24 hours, ie sucks the battery. Checked out the Github issue to double check. Am wanting to roll this out to a number of IOS devices, but aren’t at the moment. I will get kick back if they have to charge the ipads constantly to keep a network connection open.

We added in the scaffolding around sleep/wake cycles, but initial attempts ended up not saving much (especially with a device set to receive a lot of notifications, which caused a lot of sleep/wake churn). We have discussed some alternate approaches to spin down usage while phone not in use, but they will require some deeper surgery in the underlying SDKs.

Net is that it’s not being actively worked, but we plan to come back to this, hopefully during this calendar year but more likely early 2023.

Also - as a point of reference, on my iPhone I have been running mainly with a single identity connected to our internal Mattermost instance, and my ZME is 19th on my list of most active battery consuming apps - less than apps like Mail and Messages. Are you connected to something that is continuously using the Ziti connection and passing traffic?

Thanks for the reference. I have it connected to my home instance of it which is available both internal and external to the network. I have SSH and a web page available through Ziti at the moment. I dont use phone for SSH, and Safari is not showing that web page is open. Maybe I will look to remove on/both services and see if it still plays up when some/all of those services are removed.

Can you also take a look at your logs on ZME and see if you are seeing a bunch of logging happening (and that your log level isn’t set to log more frequently than INFO)?

I cannot see anything sticking out to me. I have uploaded the logs through the Send Feedback mechanism. Logging level was INFO. Actually just checking now, I only have the WWW port open. Will look on the web server and see if it sees some/any traffic from the tunnel

Got the logs, thanks. Looks like you ZME is idle - low logging, no errors, not even any Zit data plane usage. We batted around some other ideas internally today and I’ll follow-up with the team tomorrow to see what we come up with a theory on why your battery usage is so high and what we might do about it.

For want a picture to complete the information… This is for the 24 hours period. Interesting that the screen on was ~2hrs and off for ~3 hours. Wonder what it was doing the rest of the time LOL

When I click on ZME, it states 6m screen - 5h 15m background.

My battery stats probably aren’t “fair” - I’ve been spending most of my days recently connected to WiFi with my phone sitting on a wireless charging pad most of the day. I’ll make sure my phone’s not on a charger and alt between WiFi and cellular and see how that impacts my battery.

I kept my phone off the charger for most of the day yesterday, including a couple hours using only cellular. After 17 hrs 35 mins, Ziti Mobile Edge used 3% of my battery (battery was down to about 20%). My signal strength was very strong all day. I plan to make an iOS release of ZDE that reduces use of the network when idle, and I’ll post here when it makes its way to the App Store

Two days ago I removed the service from identity meaning there were no services attached to the identity. This made no difference to battery usage. Yesterday I removed the identity from the ZME and now a - on the list of usage. So it must be definitely checking in constantly with the controller. That lends me to think it is one of two things
A) bug/feature in the way zme is working on iOS (this is the angle to date)
B) a controller configuration causing this

My controller is set up from ages ago when the JWT only had a lifetime of 5 minutes by default. Would not think that had anything to do with it, but will look at the JWT and see if there is any config around this.

The usage is seen easily during nighttime. It uses around 15 minutes every hour of background activity. This is when it is sitting on the same network as the controller.

I only have access to one controller. I saw a blog around oracle cloud so keen to set up a controller in there. Maybe I try that as a second controller for testing.

Not sure if any of that helps or not but that is where I am up to with it.

Thanks, yes that helps. The change we’re making should reduce that 15 mins every hour significantly

Sweet will wait for that. The other option was to ask if there was a test controller I could grab an identity from to rule out the variables between your setup and mine.