Hacker Timesnew | past | comments | ask | show | jobs | submit | ev_dev3's commentslogin

Thats correct. The sub heading of the web page mentions monitoring for "local Docker containers". If you want production network monitoring then there are plenty of existing tools out there like Pixie or Kubeshark.


The intention is to sell this software in a similar way to Sublime Text. So a one-off fee for a perpetual license. The main difference from Sublime is that Trayce's source code is available. If GPL3 isn't compatible with such a model then I'll have to re-evaluate what license to use..


IANAL, but GPL3 is compatible with selling the software (see Linux distros). However, it forces you to open up the complete source code and it allows the users to fork and recompile it as they see fit (but they must also open up their changes if they distribute it).


If you're willing to, would you get in touch over email? I'm curious to learn more about your use case. My email is in my HN profile.

Trayce lets you import your .proto file to properly parse grpc messages.


Great question! What differentiates Trayce from other HTTP clients are:

- An ebpf-based network monitor which allows instant monitoring of HTTP(S), GRPC, MySQL, PostgreSQL. Most of those apps can only monitor HTTP using a proxy. Trayce does not use a proxy, it reads the traffic from the kernel layer.

- UI is based on Flutter, not Electron or any other browser-based framework.

- Local git-friendly HTTP request storage


Very cool that it doesn't need a proxy. That's like magic! Can't wait to try it out on something.


P.S. Here is the original post of Trayce from a year ago: https://qht.co/item?id=41102981.


This is a duplicate post from https://qht.co/item?id=41102981, mods please delete this one.


Yes, GPL3. I've added the license to the repo.


Thanks. Looks awesome. You mention the Chrome network tab but you should also check out the Firefox network tab which is probably better and more powerful, for some more inspiration.


I won't explain what ebpf is because google can do a better job of that than me but essentially this program hooks into the low-level system calls being made by your programs, so its able to grab un-encrypted network traffic before its encrypted and sent over the network. "zero-configuration" here mean you dont have to do much manual configuration to get this working.


Huh, is TLS being handled in the kernel these days? I thought most systems still used usermode libraries.


I'm using the term "low level system calls" loosely here since the poster asked for ELI5. Trayce actually uses a combination of kprobes for system calls and uprobes to monitor calls to OpenSSL or the Go crypto/tls package. More details are here: https://github.com/evanrolfe/trayce_agent/blob/main/docs/REA...


Good point, thanks. Its only ever been tested on a Mac with an Intel chip. I will try and sort this out ASAP!


I did submit a PR with a partial implementation, well the Docker and Github side. I am useless at the C and low level code.


Who has CI build runners for the given architectures?


It looks[1] like github actions only run on amd64 hosts, so if you use a platform matrix like in this example[2] I am fairly certain it is running under qemu just based on the fact that is takes roughly 10 times longer to run. I am aware of Blaze[3] has arm64 runners.

If you are willing to pay for it, you can also setup a runner that uses AWS Graviton EC2 instances[4], we do that at my workplace for our multi architecture builds.

1: https://docs.github.com/en/actions/using-github-hosted-runne...

2: https://docs.docker.com/build/ci/github-actions/multi-platfo...

3: https://www.runblaze.dev/

4: https://aws.amazon.com/ec2/graviton/


Are you running on Mac or Linux? What linux kernel version do you have in docker, run: `uname -r`. If you are using Mac with Docker Desktop then the first thing I would do is make sure thats on the latest version.

This is a common problem however when trying to run ebpf programs in docker, see "CONFIG_BPF_SYSCALL and RLIMIT_MEMLOCK issues" here: http://andreybleme.com/2022-05-22/running-ebpf-programs-on-d...

Also see "Configuring limits in the container" here too: https://blog.bitsofnetworks.org/debug-bpf-docker-l2tpns/


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: