firebase / firebase-ios-sdk

Firebase SDK for Apple App Development
https://firebase.google.com
Apache License 2.0
5.64k stars 1.48k forks source link

Got Error: Failed to get installations token (503 The service is currently unavailable) #13466

Closed nawinest closed 2 months ago

nawinest commented 2 months ago

Description

Got error "503 The service is currently unavailable" when fetch remote config. An error occurs when installing and setting up the application for the first time. This issue does not happen if the application is already installed on the device. I'm not sure this error occur because firebase is on maintenance or not because in Service status dashboard, it still working fine. https://status.firebase.google.com/

Error Message:

Error: Failed to get installations token. Error : Error Domain=com.firebase.installations Code=0 "The server responded with an error: 
 URL: https://firebaseinstallations.googleapis.com/v1/projects/evme-staging/installations/ 
 HTTP status code: 503 
 Response body: {
  "error": {
    "code": 503,
    "message": "The service is currently unavailable.",
    "status": "UNAVAILABLE"
  }
}

Additional Information:

Reproducing the issue

  1. If app installed, uninstall them first.
  2. Install app ( I tested on Firebase distribution, Testflight, XCode direct build.)
  3. Call method RemoteConfig.remoteConfig().fetch
  4. After that, will got error.

Firebase SDK Version

10.9

Xcode Version

15.3

Installation Method

CocoaPods

Firebase Product(s)

Remote Config

Targeted Platforms

iOS

Relevant Log Output

" UserInfo={NSLocalizedFailureReason=The server responded with an error: 
 - URL: https://firebaseinstallations.googleapis.com/v1/projects/evme-staging/installations/ 
 - HTTP status code: 503 
 - Response body: {
  "error": {
    "code": 503,
    "message": "The service is currently unavailable.",
    "status": "UNAVAILABLE"
  }
}

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet
```json Replace this line with the contents of your Package.resolved. ```

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet
```yml PODS: - Alamofire (5.9.1) - Amplitude (8.19.2): - AnalyticsConnector (~> 1.0.0) - AnalyticsConnector (1.0.3) - Cache (6.0.0) - DropDown (2.3.13) - FBAEMKit (16.3.1): - FBSDKCoreKit_Basics (= 16.3.1) - FBSDKCoreKit (16.3.1): - FBAEMKit (= 16.3.1) - FBSDKCoreKit_Basics (= 16.3.1) - FBSDKCoreKit_Basics (16.3.1) - FBSDKLoginKit (16.3.1): - FBSDKCoreKit (= 16.3.1) - Firebase/Analytics (10.28.0): - Firebase/Core - Firebase/Auth (10.28.0): - Firebase/CoreOnly - FirebaseAuth (~> 10.28.0) - Firebase/Core (10.28.0): - Firebase/CoreOnly - FirebaseAnalytics (~> 10.28.0) - Firebase/CoreOnly (10.28.0): - FirebaseCore (= 10.28.0) - Firebase/Crashlytics (10.28.0): - Firebase/CoreOnly - FirebaseCrashlytics (~> 10.28.0) - Firebase/DynamicLinks (10.28.0): - Firebase/CoreOnly - FirebaseDynamicLinks (~> 10.28.0) - Firebase/Messaging (10.28.0): - Firebase/CoreOnly - FirebaseMessaging (~> 10.28.0) - Firebase/RemoteConfig (10.28.0): - Firebase/CoreOnly - FirebaseRemoteConfig (~> 10.28.0) - FirebaseABTesting (10.29.0): - FirebaseCore (~> 10.0) - FirebaseAnalytics (10.28.0): - FirebaseAnalytics/AdIdSupport (= 10.28.0) - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseAnalytics/AdIdSupport (10.28.0): - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleAppMeasurement (= 10.28.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseAppCheckInterop (10.29.0) - FirebaseAuth (10.28.0): - FirebaseAppCheckInterop (~> 10.17) - FirebaseCore (~> 10.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.8) - GoogleUtilities/Environment (~> 7.8) - GTMSessionFetcher/Core (< 4.0, >= 2.1) - RecaptchaInterop (~> 100.0) - FirebaseCore (10.28.0): - FirebaseCoreInternal (~> 10.0) - GoogleUtilities/Environment (~> 7.12) - GoogleUtilities/Logger (~> 7.12) - FirebaseCoreExtension (10.29.0): - FirebaseCore (~> 10.0) - FirebaseCoreInternal (10.29.0): - "GoogleUtilities/NSData+zlib (~> 7.8)" - FirebaseCrashlytics (10.28.1): - FirebaseCore (~> 10.5) - FirebaseInstallations (~> 10.0) - FirebaseRemoteConfigInterop (~> 10.23) - FirebaseSessions (~> 10.5) - GoogleDataTransport (~> 9.2) - GoogleUtilities/Environment (~> 7.8) - nanopb (< 2.30911.0, >= 2.30908.0) - PromisesObjC (~> 2.1) - FirebaseDynamicLinks (10.28.0): - FirebaseCore (~> 10.0) - FirebaseInstallations (10.29.0): - FirebaseCore (~> 10.0) - GoogleUtilities/Environment (~> 7.8) - GoogleUtilities/UserDefaults (~> 7.8) - PromisesObjC (~> 2.1) - FirebaseMessaging (10.28.0): - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleDataTransport (~> 9.3) - GoogleUtilities/AppDelegateSwizzler (~> 7.8) - GoogleUtilities/Environment (~> 7.8) - GoogleUtilities/Reachability (~> 7.8) - GoogleUtilities/UserDefaults (~> 7.8) - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseRemoteConfig (10.28.0): - FirebaseABTesting (~> 10.0) - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - FirebaseRemoteConfigInterop (~> 10.23) - FirebaseSharedSwift (~> 10.0) - GoogleUtilities/Environment (~> 7.8) - "GoogleUtilities/NSData+zlib (~> 7.8)" - FirebaseRemoteConfigInterop (10.29.0) - FirebaseSessions (10.29.0): - FirebaseCore (~> 10.5) - FirebaseCoreExtension (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleDataTransport (~> 9.2) - GoogleUtilities/Environment (~> 7.13) - GoogleUtilities/UserDefaults (~> 7.13) - nanopb (< 2.30911.0, >= 2.30908.0) - PromisesSwift (~> 2.1) - FirebaseSharedSwift (10.29.0) - FittedSheets (2.6.1) - GoogleAppMeasurement (10.28.0): - GoogleAppMeasurement/AdIdSupport (= 10.28.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - GoogleAppMeasurement/AdIdSupport (10.28.0): - GoogleAppMeasurement/WithoutAdIdSupport (= 10.28.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - GoogleAppMeasurement/WithoutAdIdSupport (10.28.0): - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - GoogleDataTransport (9.4.1): - GoogleUtilities/Environment (~> 7.7) - nanopb (< 2.30911.0, >= 2.30908.0) - PromisesObjC (< 3.0, >= 1.2) - GoogleUtilities (7.13.3): - GoogleUtilities/AppDelegateSwizzler (= 7.13.3) - GoogleUtilities/Environment (= 7.13.3) - GoogleUtilities/ISASwizzler (= 7.13.3) - GoogleUtilities/Logger (= 7.13.3) - GoogleUtilities/MethodSwizzler (= 7.13.3) - GoogleUtilities/Network (= 7.13.3) - "GoogleUtilities/NSData+zlib (= 7.13.3)" - GoogleUtilities/Privacy (= 7.13.3) - GoogleUtilities/Reachability (= 7.13.3) - GoogleUtilities/SwizzlerTestHelpers (= 7.13.3) - GoogleUtilities/UserDefaults (= 7.13.3) - GoogleUtilities/AppDelegateSwizzler (7.13.3): - GoogleUtilities/Environment - GoogleUtilities/Logger - GoogleUtilities/Network - GoogleUtilities/Privacy - GoogleUtilities/Environment (7.13.3): - GoogleUtilities/Privacy - PromisesObjC (< 3.0, >= 1.2) - GoogleUtilities/ISASwizzler (7.13.3): - GoogleUtilities/Privacy - GoogleUtilities/Logger (7.13.3): - GoogleUtilities/Environment - GoogleUtilities/Privacy - GoogleUtilities/MethodSwizzler (7.13.3): - GoogleUtilities/Logger - GoogleUtilities/Privacy - GoogleUtilities/Network (7.13.3): - GoogleUtilities/Logger - "GoogleUtilities/NSData+zlib" - GoogleUtilities/Privacy - GoogleUtilities/Reachability - "GoogleUtilities/NSData+zlib (7.13.3)": - GoogleUtilities/Privacy - GoogleUtilities/Privacy (7.13.3) - GoogleUtilities/Reachability (7.13.3): - GoogleUtilities/Logger - GoogleUtilities/Privacy - GoogleUtilities/SwizzlerTestHelpers (7.13.3): - GoogleUtilities/MethodSwizzler - GoogleUtilities/UserDefaults (7.13.3): - GoogleUtilities/Logger - GoogleUtilities/Privacy - GTMSessionFetcher/Core (3.5.0) - IdensicMobileSDK (1.32.0): - IdensicMobileSDK/Default (= 1.32.0) - IdensicMobileSDK/Core (1.32.0) - IdensicMobileSDK/Default (1.32.0): - IdensicMobileSDK/Core - Imaginary (5.0.0): - Cache (~> 6.0.0) - JTAppleCalendar (8.0.5) - JWTDecode (3.1.0) - KeyboardAvoidingView (5.2.0): - ViewState (>= 1.2.1) - KeychainAccess (4.2.2) - Kingfisher (7.12.0) - Lightbox (2.5.0): - Imaginary (~> 5.0.0) - lottie-ios (4.5.0) - MockingbirdFramework (0.20.0) - nanopb (2.30910.0): - nanopb/decode (= 2.30910.0) - nanopb/encode (= 2.30910.0) - nanopb/decode (2.30910.0) - nanopb/encode (2.30910.0) - NVActivityIndicatorView (5.2.0): - NVActivityIndicatorView/Base (= 5.2.0) - NVActivityIndicatorView/Base (5.2.0) - PromisesObjC (2.4.0) - PromisesSwift (2.4.0): - PromisesObjC (= 2.4.0) - RecaptchaInterop (100.0.0) - RoutableLogger (12.4.0) - SwiftGen (6.6.3) - SwiftLint (0.52.2) - SwiftyJSON (5.0.2) - ViewState (2.1.0): - ViewState/Core (= 2.1.0) - ViewState/Core (2.1.0): - RoutableLogger (>= 9.1.11) - Wormholy (1.7.0) DEPENDENCIES: - Alamofire (= 5.9.1) - Amplitude (= 8.19.2) - DropDown (= 2.3.13) - FBSDKCoreKit (= 16.3.1) - FBSDKLoginKit (= 16.3.1) - Firebase/Analytics (= 10.28.0) - Firebase/Auth (= 10.28.0) - Firebase/Crashlytics (= 10.28.0) - Firebase/DynamicLinks (= 10.28.0) - Firebase/Messaging (= 10.28.0) - Firebase/RemoteConfig (= 10.28.0) - FittedSheets (= 2.6.1) - GoogleUtilities (= 7.13.3) - IdensicMobileSDK (= 1.32.0) - JTAppleCalendar (= 8.0.5) - JWTDecode (= 3.1.0) - KeyboardAvoidingView (= 5.2.0) - KeychainAccess (= 4.2.2) - Kingfisher (= 7.12.0) - Lightbox (= 2.5.0) - lottie-ios (= 4.5.0) - MockingbirdFramework (~> 0.20) - NVActivityIndicatorView (= 5.2.0) - SwiftGen (= 6.6.3) - SwiftLint (= 0.52.2) - SwiftyJSON (= 5.0.2) - Wormholy (= 1.7.0) SPEC REPOS: https://github.com/SumSubstance/Specs.git: - IdensicMobileSDK trunk: - Alamofire - Amplitude - AnalyticsConnector - Cache - DropDown - FBAEMKit - FBSDKCoreKit - FBSDKCoreKit_Basics - FBSDKLoginKit - Firebase - FirebaseABTesting - FirebaseAnalytics - FirebaseAppCheckInterop - FirebaseAuth - FirebaseCore - FirebaseCoreExtension - FirebaseCoreInternal - FirebaseCrashlytics - FirebaseDynamicLinks - FirebaseInstallations - FirebaseMessaging - FirebaseRemoteConfig - FirebaseRemoteConfigInterop - FirebaseSessions - FirebaseSharedSwift - FittedSheets - GoogleAppMeasurement - GoogleDataTransport - GoogleUtilities - GTMSessionFetcher - Imaginary - JTAppleCalendar - JWTDecode - KeyboardAvoidingView - KeychainAccess - Kingfisher - Lightbox - lottie-ios - MockingbirdFramework - nanopb - NVActivityIndicatorView - PromisesObjC - PromisesSwift - RecaptchaInterop - RoutableLogger - SwiftGen - SwiftLint - SwiftyJSON - ViewState - Wormholy ```
google-oss-bot commented 2 months ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

priyam-swiggy commented 2 months ago

Team, please look into this issue asap. It's breaking our critical flows.

colondeethpark commented 2 months ago

It happened to me too, but it worked normally after 2 hours.

priyam-swiggy commented 2 months ago

@colondeethpark which region?

colondeethpark commented 2 months ago

@priyam-swiggy Seoul, South Korea

nawinest commented 2 months ago

@colondeethpark In my case, if I continue to call the fetch method, it sometimes works. but for the first time it always fail. For my location is Thailand, Bangkok

priyam-swiggy commented 2 months ago

It's started working now in my region as well. Bengaluru India.

It will be good if we get a brief RCA or any mitigation measures that we can take for such issues in the future.

nawinest commented 2 months ago

It looks like it's working fine now. Thank you to the Firebase team for the quick support. But according to @priyam-swiggy , Can firebase team summary about this issue?

rizafran commented 2 months ago

Hi all, per checking, there are similar reports from other developers regarding the 503 error in installations token. This has already been raised to our engineers for investigation. While the team currently investigates this behavior, we've yet to provide details or timelines for the fix. We'll let you know as soon as I got an update. Apologies for the inconvenience.

paulb777 commented 2 months ago

The backend problems causing this should now be addressed. Please comment or create a new issue if it reoccurs.