Thank you for following up on this @Yudong Li.
The most common workflow if to record the live streams locally, as an MP4 file, transfer that MP4 file to the AWS S3 bucket and use the Wowza Media Cache feature to retrieve that MP4 file and cache it locally whenever it is requested by a playback client. If the playback client is requesting the Apple HLS stream then this stream will be transmuted into HLS media chunks, on the fly, and delivered to the playback client.
Below you can find a useful article describing how to use the Wowza Media Cache feature:
https://www.wowza.com/docs/How-to-scale-video-on-demand-streaming-with-Media-Cache
Another option is to use a custom module, and I think this is the one my colleagues were talking about, which will have the playlist manifests and TS media chunks pushed to an alternate location, or stored locally on the disk drive.
https://www.wowza.com/docs/how-to-send-apple-hls-streams-to-a-generic-destination
Please note that these are media chunks generated for a live stream, and by default Wowza will keep only 10 TS chunks. This way, while new TS chunks get created, old ones are being deleted.
I hope this helps you. I see you have a support ticket as well and the engineers can provide further assistance.