Instead of relying on Stackdriver's ingestion timestamps, parse
timestamps out of journal entries and provide those to Stackdriver.
If a timestamp could not be parsed out of a log entry, the ingestion
time is used as the fallback.
In some cases sending 1000 entries seemingly results in a vague "Bad
request" error.
This reduces the chunk size to something that should be more
manageable.
Adds support for persisting the cursor position in a file (by default
`/var/journaldriver/cursor.pos`, overridable via the environment
variable `CURSOR_POSITION_FILE`).
This lets journaldriver resume from a known journal position after
service restarts.
This closes#3
Stackdriver supports structured JSON payloads in addition to simple
plain-text payloads.
This commit introduces a new feature in which journaldriver will
attempt to parse incoming log messages into JSON vaues and forward
them as structured payloads if they are JSON objects.
Messages that can not be parsed into JSON objects will continue to be
forwarded as plain text messages.
In the previous configuration the dependency on `ivy-pass` added a
second version of ivy to the load-path.
It is fixed by manually pinning ivy and its related packages and using
those to build ivy-pass.
This configuration should be temporary until the next time the MELPA
package set is updated in nixpkgs.
This caused the symptoms in raxod502/prescient.el#10
- 38311bf46f29bf1b20bdfe6c9b10c54e6258d28c Fix inlined_vector_benchmark when using libc++. libc++'s ... by Derek Mauro <dmauro@google.com>
- 32178d067d4af7c3062532103d213eb7230c2be6 Adding sha256 hashes to dependencies in Abseil OSS WORKSP... by Daniel Katz <katzdm@google.com>
- 13ac34416b326909f1ce0889ec0eb3bff3f3bebe Fix silly whitespace typo. by Daniel Katz <katzdm@google.com>
GitOrigin-RevId: d6b8d35be9659e1c99a5daca1af8c8587acaa044
Change-Id: I6be0d76930206edb79a10779bff3ffcc5ce856c9
This implements the "meat" of the initial version of journaldriver.
Records from journald are converted into the representation required
by Stackdriver and forwarded to the API.
In this initial version journaldriver is only supported on instances
running on GCP.
Stores the unstable channel in the global package set to make it
available in the emacs module.
All emacs-related packages are now taken from the unstable channel.
Related changes:
* prescient is now built directly from git
* sly has been (temporarily) removed because the MELPA recipe is
failing
Unfortunately the version bumps to prescient and ivy (& its related
packages) don't seem to help with raxod502/prescient.el#10
Implements a periodically updated telephone-line segment that displays
the current unread count for the two most important inboxes in the
mode-line, if there are unread mails.
Telephone line has a slightly easier to configure segment system. This
commit also uses the commit introduced in the previous function to
conditionally display miscellaneous modeline information in the last
window of a frame.
More configuration for this will come over time.
Defines an 'org-clubhouse-update-story-title' interactive function. Can
only be invoked if cursor is over the Headline title
fixes string-to-int -> string-to-number (unsupported as of Emacs 26)
Adds a function that can be used to check whether the current buffer
is displayed in the "last" window of the active frame.
The intention is to use this predicate to modify the modeline display
to only show miscellaneous information (time, battery percentage etc.)
on the last window instead of duplicating it.
Expose a `org-clubhouse-default-story-type` variable that can be set to
`feature`, `bug`, `chore` or `prompt`. If set to `prompt`, the
org-clubhouse `Create new story` flow will prompt for the story type
each time. If set to any of the other values, the `Create new story`
flow will use that value for all new stories until that variable is set
otherwise.
This also exposes a new interactive function called
`org-clubhouse-set-default-story-type` that prompts users to set the
default story type value.
I hate to make this such a large check but the lack of documentation means we really have no idea what's allowed. All of them reported so far have been within ".app/Contents" directories. That appears to be a safe starting point. However, I would not be surprised to also find more paths that are disallowed for instance in .framework or .bundle directories.
Fixes#2031Fixes#2229
- 78c61364007f6ab66155c151d0061bbec89c3dbd Update variadic visitation to use a switch statement when... by Matt Calabrese <calabrese@google.com>
- b62eb9546087e0001307a741fcdf023b2d156966 Merge GitHub PR #130 - Add MIPS support to GetProgramCoun... by Derek Mauro <dmauro@google.com>
- 09ab5739de33c8f1bebab2bb70bf7d4331348f05 Update ABSL_ASSERT to silence clang-tidy warnings about c... by Matt Calabrese <calabrese@google.com>
- e73ee389ce8fe1a90738973c219ebbb19bb389f3 Update unary visitation to use a switch statement when th... by Matt Calabrese <calabrese@google.com>
- c8734ccf475b856c95220f21a5ec4f44302cb5ce Work around a MSVC bug for absl::variant, by making `Acce... by Xiaoyi Zhang <zhangxy@google.com>
GitOrigin-RevId: b9a479321581cd0293f124041bf5c06f456afec1
Change-Id: Idb6fc906087c0a4e6fc5c75a391c7f73101c613e
This makes 'nix copy' and 'nix path-info' work on .drv store
paths. Removing special treatment of .drv files seems the most
future-proof approach given the possible removal of .drv files in the
future.
Note that 'nix build' will still build (rather than substitute) .drv
paths due to the unfortunate overloading in Store::buildPaths().
Ivy's regex-based fuzzy matching can occasionally be slow, which was
getting on my nerves.
This switches the completion engine to prescient[1] which promises to
be faster. Experimental testing in large files like the
`configuration.nix` man page looks promissing.
[1]: https://github.com/raxod502/prescient.el
These packages are not in nixpkgs yet (will most likely be added after
the next MELPA import), so they're added here manually.
As both originate from the same source they're added to the same
derivation here by using a custom recipe.
EvalState contains a few counters (e.g. nrValues) that increase
quickly enough that they end up being interpreted as pointers by the
garbage collector. Moving it to the heap makes them invisible to the
garbage collector.
This reduces the max RSS doing 100 evaluations of
nixos.tests.firefox.x86_64-linux.drvPath from 455 MiB to 292 MiB.
Note: ideally, allocations would be much further up in the 64-bit
address space to reduce the odds of an integer being misinterpreted as
a pointer. Maybe we can use some linker magic to move the .bss segment
to a higher address.
This reduces the risk of object liveness misdetection. For example,
Glibc has an internal variable "mp_" that often points to a Boehm
object, keeping it alive unnecessarily. Since we don't store any
actual roots in global variables, we can just disable data segment
scanning.
With this, the max RSS doing 100 evaluations of
nixos.tests.firefox.x86_64-linux.drvPath went from 718 MiB to 455 MiB.