Is there any possible way to watch missed event? suppose my sever was down when the event was emitted in he contract, how can I watch all those events that I missed to watch during the server off time?
When you start again, accessing the events will show you all the events, you need to know what was the last block received and use that to filter the events. If your app depends on this you may consider to store logs with the information of the latest processed block do that you can start from there in case of server failure in the future.
Hope this helps