Recentemente il mio Mac mostra alcuni strani messaggi come "Il mese 13 è fuori limite".
Come posso correggere questo errore Non posso andare al centro di riparazione autorizzato ant apple perché è molto lontano da un centro Apple
Recentemente il mio Mac mostra alcuni strani messaggi come "Il mese 13 è fuori limite".
Come posso correggere questo errore Non posso andare al centro di riparazione autorizzato ant apple perché è molto lontano da un centro Apple
Risposte:
Questo errore è registrato su iOS 11 e su macOS 10.13 di sicuro e non lo vedo causare alcuna funzione specifica o problema su qualsiasi piattaforma.
Collegherò qui alla domanda principale su "macOS registra troppo" poiché è un'opinione e un'impressione degna di discussione. Alcune persone potrebbero sentirsi meglio se non ci fossero messaggi a meno che una condizione davvero seria non richieda un'azione. Altri vogliono ancora più dettagli in modo che possano sapere cosa sta accadendo / apprendere / misurare. Quindi, sarà un compromesso il modo in cui questi sono problemi / classificati / utilizzati.
Uno sviluppatore interessante che ha alcuni strumenti è Howard Oakley che blog su https://eclecticlight.co/
La sua pagina di download ha due app di interesse (usa il link di download a sinistra poiché le versioni del prodotto di seguito sono beta e potrebbero non essere aggiornate in un giorno o settimana):
Posso verificare la legittimità di questo problema. Ho avuto lo stesso problema ieri e, dopo un riavvio, il computer è stato reso quasi inutile a causa di questo errore. Per qualche ragione, questo mese il computer non può gestire e genera errori ovunque ci siano database o pianificazioni.
Per risolvere questo problema:
Aprire Activity Monitor e la forza di smettere di due processi: lsd
,UserEventAgent
Apri Preferenze di Sistema e vai a "Data e ora"
Deseleziona "Imposta data e ora automaticamente"
Nel calendario, selezionare una data precedente a dicembre 2017 e premere Salva
Se UserEventAgent
o lsd
continui a causare problemi, forzali a chiuderli nuovamente dopo aver impostato la data.
Altre persone qui hanno questo problema
Perché?
A mio avviso, UserEventAgent stava tentando di utilizzare due file plist:
System/Library/LaunchAgents/com.apple.UserEventAgent-Aqua.plist
e
System/Library/LaunchAgents/com.apple.UserEventAgent-LoginWindow.plist
Quando ha tentato di utilizzare le pianificazioni, ha ricevuto un errore:
Month 13 is out of bounds
Non sono sicuro di cosa sia effettivamente accaduto in UserEventAgent, ma è ovvio che quando viene visualizzato l'errore, non è in grado di gestirlo e causa un elevato utilizzo di CPU e RAM.
Ho avuto lo stesso problema con l'utilizzo di CPU e memoria UserEventAgent estremamente elevati a partire dall'inizio di dicembre 2017. La console ha mostrato l'errore "mese fuori limite" come descritto sopra.
Ho provato l'utilità del disco "pronto soccorso", riavvii, modalità provvisoria (per cancellare la cache di sistema), svuotare NVRAM e SMD, nulla mi ha aiutato. Ho notato che l'utilizzo della CPU e della memoria non è aumentato in modalità provvisoria.
Come @tgray e u / kidtexas , ad un certo punto ho capito che se disabilitassi tutti i miei programmi personalizzati di avvio, il problema non si sarebbe verificato.
Alla fine ho scritto la piccola sceneggiatura qui sotto per aiutarmi a eseguire il debug di quale piano stava causando il problema. Alla fine è stato un complice che viene eseguito il primo di ogni mese:
<key>StartCalendarInterval</key>
<dict>
<key>Day</key>
<integer>1</integer>
<key>Hour</key>
<integer>03</integer>
<key>Minute</key>
<integer>00</integer>
</dict>
Molti dei miei plist usano la StartCalendarInterval
chiave, e usando lo script qui sotto potrei mostrare che non sembrano causare i problemi di RAM e memoria, quindi non mi è del tutto chiaro perché uno specifico plist causi il problema. Indipendentemente da ciò, è così che l'ho risolto.
Consiglio vivamente ai lettori di consultare lo script per cercare di capire cosa fa invece di limitarsi a copiare e incollare. In particolare, come scritto questo funziona solo per plists in ~/Library/LaunchAgents
(non /Library/LaunchDaemons
e altri), ed è volutamente test solo plists il cui nome del file e <key>Label</key>
seguire il modello specifico: com.USERNAME.my_plist_name[.plist]
. Prima di eseguirlo, ho usato un one-liner per bootout
tutti i miei pianisti: for plist in com."$(whoami)".*.plist; do launchctl bootout gui/"${MYUID}"/"${plist%.plist}" || true; done
e poi verificato che non apparissero più sotto i launchctl list
risultati.
#! /bin/bash
# /apple/307512/month-13-is-out-of-bounds
set -euf -o pipefail
MYUID="$(id -u)"
pushd "${HOME}"/Library/LaunchAgents
while IFS= read -r -d '' plist; do
echo "${plist}"
stats=($(ps ux | grep -v grep | grep UserEventAgent | awk '{ print $3, $5}'))
cpu="${stats[0]}"
vmem="${stats[1]}"
echo "CPU use and virtual memory size while disabled: ${stats[@]}"
launchctl bootstrap gui/"${MYUID}" "${plist}"
sleep 5
stats=($(ps ux | grep -v grep | grep UserEventAgent | awk '{ print $3, $5}'))
echo "CPU use and virtual memory size while enabled: ${stats[@]}"
echo "Change in vmem: $(( "${vmem}" - "${stats[1]}" ))"
echo
done < <(find . -iname "com.$(whoami).*.plist" -print0)
popd
bootout
(o simile) che n8henrie raccomanda.
Come altri, avevo un elevato utilizzo della CPU e un enorme utilizzo della RAM da parte di UserEventAgent (vedi il mio commento sopra). Cambiare la data a novembre e forzare l'uscita da UserEventAgent cose fisse. Tutto è iniziato sabato dopo il riavvio.
L'ho capito per me. Spero che per gli altri con problemi, questo funzionerà per te.
Il problema era un plist di LaunchAgent che ho in ~ / Library / LaunchAgents. È un semplice file plist che chiama StartCalendarInterval, che è una chiave valida per i piani di avvio. Il lavoro LaunchAgent chiama uno script shell che copia alcuni file in una posizione di backup il primo giorno del mese. Il lavoro non viene chiamato affatto - penso che sia stato avviato controllando i lavori caricati sul Calendario che sta causando il problema. Non appena ho scaricato questo plist e ho spostato il file fuori dalla directory, UserEventAgent andava bene (dopo una chiusura forzata). Il secondo che ho caricato il plist (launchctl load xxxx), UserEventAgent è andato fuori di testa.
StartCalendarInterval è una chiave valida per launchd come mostrato qui nei documenti di Apple .
Quindi, per chiunque abbia problemi, controlla le tue directory LaunchAgent e cerca la chiave StartCalendarInterval (o qualsiasi altra chiave relativa al calendario). Non ho avuto problemi con le pianificazioni degli intervalli basate sul tempo.
Nota: questo non risolve gli errori "Mese 13 fuori limite", ma solo il folle comportamento di UserEventAgent.
Dopo aver segnalato questo ad Apple e ridimensionato la catena di escalation, mi è stato detto che questo dovrebbe essere risolto in macOS 10.13.3.
Apparentemente, ciò è causato da un'applicazione che chiama la procedura DeDececated NSDate 'descriptionWithCalendarFormat' .
Puoi leggere di più su https://forums.developer.apple.com/thread/88417 .
In alcuni casi, la modifica o la rimozione di determinati file plist impedirà ai programmi di chiamare la procedura obsoleta, ma la vera correzione è un aggiornamento del sistema operativo.