Someone may have altered the procedure? That would cause the signature to be dropped.
Next time this happens, run this query which should return all procedures in the database that are signed by a server certificate:
SELECT quotename(s.name) + '.' + quotename(o.name) AS Module,
c.name AS Cert, c.subject, dp.name AS [Username], cp.*
FROM master.sys.crypt_properties cp
JOIN master.sys.certificates c ON cp.thumbprint = c.thumbprint
LEFT JOIN sys.database_principals dp ON c.sid = dp.sid
JOIN sys.objects o ON cp.major_id = o.object_id
JOIN sys.schemas s ON o.schema_id = s.schema_id
Even better run it now in the database where you have the procedure to check that it returns correct data, so that you can trust it, next time you have an incident.